파일 시스템에서 파일을 이동하거나 이름을 변경하는 경우에도 파일을 추적하는 방법을 찾으려고합니다.Java에서 파일 변경 사항을 추적하기위한 파일 ID?
내가 가진 한 가지 아이디어는 Java 7에서 새 UserDefinedFileAttributeView를 사용하고 사용자 정의 파일 유형으로 사용자 정의 파일 속성을 만드는 것입니다. 나는 이것이 다른 플랫폼 (Windows와 Mac)에서 작동한다고 생각했다. 그러나 나는 그것을 작동시킬 수 없다. 심지어이 페이지의 예제를 연습하기 - http://docs.oracle.com/javase/tutorial/essential/io/fileAttr.html -이 라인에 도착하면 :
UserDefinedFileAttributeView보기 = Files.getFileAttributeView (파일, UserDefinedFileAttributeView.class);
뷰 변수에 대해서만 null 값을 가져오고 프로그램은 nullpointer 예외로 중지합니다.
그런 다음 최소한 Mac에서이 작업을 수행하는 것이 더 쉬운 방법이라는 것을 발견했습니다. BasicFileAttributes fileKey 특성을 사용하십시오. 나는 이것을 시도하고 fileKey는 파일을 이동하거나 이름을 변경하더라도 동일하게 유지되는 것처럼 보입니다. 그러나이 기능은 플랫폼에 따라 다르며 Windows에서 작동하지 않는 어딘가에있는 것을 기억합니다 ...
우선, fileKey 메서드는 Mac에서 안정적인 방법입니까? 그렇다면 Windows에서 동일한 기능을 수행하려면 어떻게해야합니까? 누구나 내가 왜 UserDefinedFileAttributeView에 null이되는지 알 수 있습니까? 왜냐하면 내가 그것을 작동시킬 수 있다면 그것은 크로스 플랫폼이어야한다고 생각합니다. ...
을, 그러나 당신이 일하도록하는 것이 흥미 롭습니다. 고마워, 나는 기회가있을 때 그것을 시도 할 것이다. – Anders
UserDefinedFileAttributeView의 저장 방법은 Windows에서 어떻게 이루어 집니까? – Shrenik