본문 바로가기

Computer195

lucene에서 HTML 색인 * JTidy이용하여 텍스트 추출 http://tidy.sourceforge.net 에서 개발이 진행되고 있다. JTidy는 앤디 퀵의 Tidy를 자바로 포팅한 것이다. public String[] getJTidyHTMLDocumentString(InputStream is){ String[] returnValue=new String[5]; //개체 생성후 설정.. Tidy tidy=new Tidy(); tidy.setQuiet(true); //no 'Parsing X', guessed DTD or summary tidy.setShowWarnings(false); //ShowWarnings - however errors are always shown tidy.setRawOut(true); //RawOut .. 2007. 9. 15.
lucene에서 마이크로소프트 문서 색인 * Jakarta POI 이용 POI는 http://jakarta.apache.org/poi 에서 찾을 수 있다. POI는 MS의 OLE2 복합문서 포맷을 기반으로 한 다양한 문서 포맷을 다룰수 있는 API를 제공한다. 다음의 두 함수는 word 파일을 Open한 InputStream으로 부터 Text를 추출하는 함수들이다. 다음 함수들을 보면 매우 간단하게 Word 문서의 Text를 추출 가능하다는 것을 알수 있다. public String[] getWordDocumentString(InputStream is){ String[] returnValue=new String[5]; try{ WordDocument wd=new WordDocument(is); StringWriter docTextWriter =.. 2007. 9. 15.
lucene에서 PDF 문서 처리 * PDFBox를 이용한 PDF 문서 처리 1. PDFBox http://www.pdfbox.org/ 에서 다운 로드가 가능하다. 2007년 8월 현재 0.7.3 버전이다. 이 zip파일에는 PDF를 처리하기 위한 윈도우용 execute 파일과 jar, war, java소스들이 포함되어 있다. PDFBox-0.7.3.jar 를 CLASSPATH에 지정해 놓는다. 해당 jar에 대한 javadoc는 http://www.pdfbox.org/javadoc/index.html 에서 볼수 있다. 2. LucenePDFDocument 클래스 이용 특별히 Document 생성을 제어할 필요가 없는 경우, 즉 기본적으로 설정된 Field로만 사용해도 무방한 경우 간단하게 사용이 가능하다. 다음은 LucenePDFDoc.. 2007. 9. 2.
[Bluetooth] Bluetooth 프로그래밍 개요 블루투스 기기간 Communication은 다음과 같다. 1. 통신할 Device를 선택 2. 선택한 Device와 어떻게 통신할 것지를 판단 3. Outgoing connection을 만듬 4. Incomming conection을 Accept 함 5. 데이터 송/수신 TCP/IP programming에 비해서 1번과 2번은 생소한 개념이다. 1. 통신할 Device의 선택 모든 블루투스 칩은 48-bit의 독특한 address를 가지고 있다. 이를 "Bluetooth address" 또는 "device address"라고 한다. Ethernet의 MAC을 생각하면 될것이다. 그리고 IEEE Registration Authority에 의해서 관리 된다. 이 address는 저수준에서 고수준의 통신의 모.. 2007. 6. 13.
linux box를 bluetooth access point로 사용하기.. Bluetooth dongle은 class I, class II, class III 로 분류가 된다. Class I은 100 meter까지 send/receive 가 가능한 장치가 되고, class II는 10 meter까지, class III는 1 meter까지 가능하다. 대부분 laptop과 PDA에는 class II 장치 들이 들어가 있다. 1. Bluetooth 관련 package 설치 pacman -S bluz-libs bluez-utils iptables ppp (BlueZ Bluetooth 설치) -- BlueZ는 http://www.bluez.org/ 에서 볼수 있다. 이 경우 pacman이라는 Arch linux용 package manager가 된다. /etc/bluetooth/pin 파.. 2007. 5. 22.
[DeviceDriver]Kernel Timer 하드웨어 상태를 주기적으로 감시할때 정해진 시간이 초과되면 특정 함수를 수행하는 기능을 한다. 리눅스 커널은 타이머 인터럽트가 발생하며 스케줄링에 필요한 처리를 끝낸 후 커널 타이머 목록이라는 데이터 구조를 검사하며, 이 커널 타이머 목록은 수행할 함수와 처리되어야 할 시간에 대한 정보가 담긴 연결 리스트이다. 커널 타이머 이용시 struct timer_list : 커널 타이머 구조체 init_timer(): 커널 타이머 구초제를 초기화 한다 add_timer(): 커널 타이머에 수행될 함수를 등록한다 del_timer(): 커널 타이머 목록에서 등록된 것을 제거한다. 커널 타이머는 동작 시간이 1/Hz 단위로 1/Hz초 이하의 호출 주기는 사용이 불가능 하다 다음은 커널 2.6 버젼에서의 타이머 동작이.. 2007. 5. 9.