Windows で任意のファイルを右クリックすると、メニューの [プロパティ] を選択できます。次のダイアログ ボックスに、[詳細] タブが表示されます。そこでは、多くのプロパティ (名前、タイプ、所有者など) を見つけることができます! 私の質問は:
このファイルのプロパティを読み取るにはどうすればよいですか?
私は何年も前にそれを試しましたが、私には不可能でした。Java 1.7では可能かもしれません。UserDefinedAttributeView を試しましたが、うまくいきません。
私は次のことを試しました: [詳細] タブにセクション "ファイル" とプロパティ "名前" が表示されます。しかし、以下のコードを実行すると例外が発生します。
スレッド「メイン」での例外 java.nio.file.NoSuchFileException: D:\test.txt:File.Name
そして、text.txt が存在します ;)
Path path = new File("D:\\test.txt").toPath();
UserDefinedFileAttributeView view = Files.getFileAttributeView(path, UserDefinedFileAttributeView.class);
String name = "File.Name";
ByteBuffer buf = ByteBuffer.allocate(view.size(name));
view.read(name, buf);
buf.flip();
String value = Charset.defaultCharset().decode(buf).toString();
あなたの貢献には本当に感謝をしている!