나는 실행 중에 동적으로 생성 될 수있는 파일을 확인해야하는 응용 프로그램을 가지고 있는데, 파일이 아직 나타나지 않은 최대 시간 이후에 포기할 것입니다. Java에서 파일을 폴링하는 것 외에 다른 파일을 검사하는 것보다 효율적인 방법이 있는지 알고 싶었고 매 X 초마다 자고 있었습니까? 그렇다면 가장 효율적인 방법은 무엇일까요?Java로 동적으로 생성 된 파일을 확인하는 방법은 무엇입니까?
답변
언급 한대로 파일 시스템을 폴링해야합니다. Java 7은 file system notifications으로되어 있기 때문에 어느 시점에서는 쉽게 이해할 수 있습니다.
동일한 프로그램에서 폴링으로 파일을 만드는 경우 Object.notify()를 사용하여 프로그램 부분에 파일을 알리는 논리를 추가 할 수 있습니다. wait() 및 notify/notifyAll() 메커니즘에 대한 일반적인 설명은 여기에서 찾을 수 있습니다. http://java.sun.com/docs/books/tutorial/essential/concurrency/guardmeth.html
이것은 좋은 생각처럼 보이지만 파일이 외부에서 생성되기 때문에 필자의 경우에는 적용 할 수 없습니다. – Traker
JPoller을 시도해 파일 변경 사항을 조사 할 수 있습니다.
Windows에서 실행중인 경우 디렉터리 변경 알림을받을 수 있습니다 (Obtaining Directory Change Notifications 참조). 물론 이것은 크로스 플랫폼이 아니며 JNA 또는 이와 유사한 기본 브리지를 사용해야합니다. 사실, 클래스와 같은 JNA 오프사이드, 기본 플랫폼의 파일 변경 알림을 사용하는 FileMonitor 클래스 (다운로드시).
손쉬운 파일 수를 보아도 폴링은 성능상의 문제가 아닐 수도 있지만 "기분 좋은"해결책은 아닙니다. 순수 자바 솔루션. 다른 한편으로는 수천 개의 파일을 포함하는 디렉토리를 모니터링하면 OS에서 직접 noficiation의 혜택을 볼 수 있습니다.
- 1. wxpython에서 동적으로 생성 된 창/버튼을 확인하는 방법은 무엇입니까?
- 2. 캐비닛 파일을 Java로 생성
- 3. 주어진 디렉토리에 Java로 텍스트 파일을 동적으로 추가하는 방법은 무엇입니까?
- 4. NetBeans .form 파일을 .java로 변환하는 방법은 무엇입니까?
- 5. 동적으로 생성 된 QRadioButton을 사용하여 동적으로 생성 된 객체를 토글합니다.
- 6. Java로 동적으로 객체 이름을 지정하는 방법은 무엇입니까?
- 7. 동적으로 생성 된 div 태그를 동적으로 숨기는 방법은 무엇입니까?
- 8. 동적으로 생성 된 파일을 web.config의 configSource로 사용하십시오.
- 9. 동적으로 생성 된 배열
- 10. 동적으로 생성 된 버튼을 동적으로 생성 된 테이블에 추가하는 방법은 무엇입니까?
- 11. Java 덤프 파일을 Java로 복원하는 방법은 무엇입니까?
- 12. Java로 파일을 계속 읽는 방법은 무엇입니까?
- 13. 디렉토리의 파일을 java로 날짜별로 정렬하는 방법은 무엇입니까?
- 14. 동적으로 생성 된 연산자
- 15. 동적으로 생성 된 클래스?
- 16. 동적으로 생성 된 TABLENAME
- 17. 동적으로 생성 된 GUI
- 18. 동적으로 생성 된 버튼
- 19. 동적으로 생성 된 Ajax.BeginForm
- 20. C++ 컴파일러에서 생성 된 코드를 확인하는 방법은 무엇입니까?
- 21. Django에서 동적으로 생성 된 ZIP 아카이브 서비스
- 22. Heroku에서 동적으로 생성 된 이미지 캐싱
- 23. 동적으로 생성 된 UIView 개체
- 24. 다른 스레드에서 생성 된 스레드를 확인하는 방법은 무엇입니까?
- 25. Java로 AutoCAD 파일 생성?
- 26. 메모리에 저장된 동적으로 생성 된 어셈블리를 저장하는 방법은 무엇입니까?
- 27. FindControl 함수를 사용하여 동적으로 생성 된 컨트롤을 찾는 방법은 무엇입니까?
- 28. 얼마 동안 동적으로 생성 된 요소를 표시하는 방법은 무엇입니까?
- 29. 동적으로 생성 된 컨트롤에서 부분 캐싱을 사용하는 방법은 무엇입니까?
- 30. 동적으로 생성 된 IFRAME에 대해 document.domain을 설정하는 방법은 무엇입니까?
멋지다. 기다릴 수 없어. –