2012-06-14 2 views
1

파일을 추가하거나 편집 할 때마다 모든 청취자에게 어떤 파일 및 라인에서 데이터를 편집, 삭제 및 추가했는지 알려주는 이벤트를 실행해야합니다. 어떤 데이터로.I/O에서 이벤트 처리

내가 생각한 가능한 해결책은 스레드와 액션 리스너를 사용하여 파이프 된 I/0 스트림을 캐스케이드하는 것이지만 필요한 속도, 메모리 관리, 동기화가 필요한 소형 솔루션을 달성 할 수 없습니다.

예 : Windows 메모장에서 'txt'파일을 편집하고 있습니다. 그리고 저장하자 마자 백그라운드에서 실행중인 프로그램이 모든 청취자에게 데이터가 편집되었음을 알리는 이벤트를 시작하고 데이터에 대한 일부 처리가 변경됩니다.

이미 구현 된 솔루션이있는 경우이를 참조하십시오.

답변

1

나는 이것을 시도하지 않았지만, 문서를보고 FileSystem#newWatchService이 필요할 수도 있습니다. WatchService의 사용법 (및 예)은 'Oracle WatchService tutorial'에서 확인할 수 있습니다.

+0

[* WatchService for Java 6 *] (http://stackoverflow.com/questions/7968488/watchservice-for-java-6)도 참조하십시오. – trashgod