외부 프로세스에서 파일 복사가 완료되었는지 여부를 확실하게 알 수있는 플랫폼 간 방법을 찾으려고합니다.현재 파일이 Java로 자라는 지 확인하는 방법 (OS 독립적)
이전 OSX/리눅스에 단순히
File file = new File("path/to/file");
file.length()
후 몇 초 동안 대기하고 변경했다 있는지 다시 확인 확인 된 것입니다.
그러나이 방법은 항상 전체 파일의 크기를 반환하므로 (결국 한 번 복사됩니다) Windows에서는 작동하지 않습니다.
lastModified 타임 스탬프를 확인해 보았지만 변경되지 않은 것으로 보입니다.
모든 OS에는 이러한 기능이 없습니다. 너 뭐하려고? –
완료를 신호하기 위해 데이터 쓰기가 완료되면 플래그 파일을 게시하도록 외부 프로세스에 요청할 수 있습니까? 그게 내가 일반적으로 그것을 어떻게하거나 피드 등을 교환 할 때 외부 데이터 공급자에게 물어보십시오 – amphibient
때마다 새 파일 개체를 만드시겠습니까? 그렇지 않다면, 생성하려고하는 File 객체가 마지막으로 수정 한 시간을 캐싱하고있을 가능성이 있습니다. – Brigham