当您在 Windows 中右键单击任何文件时,您可以在菜单中选择“属性”。 在即将出现的对话框中,您会看到一个选项卡:“详细信息”。在那里你可以找到很多属性(名称、类型、所有者……)! 我的问题是:
我如何读取此文件属性?
我几年前就尝试过,但对我来说是不可能的。我认为在 Java 1.7 中这可能是可行的。我已经尝试过 UserDefinedAttributeView,但它不起作用。
我尝试了以下操作:我在“详细信息”选项卡中看到"file"部分和“名称”属性。但是如果我执行下面的代码,我会得到一个异常:
线程“main”中的异常 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();
非常感谢您的支持!
最佳答案
我有一个类似的问题,我通过调用新属性“user”解决了这个问题。并使用相同的字符串“user.”获取它。我不确定"file"。有效,无论如何通过命令“view.list().toString()”检查用户定义的属性列表。
希望对你有帮助(..即使很晚......)
关于java - 如何读取文件 : Properties > Details > Content > Pages e. g。对于word文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18129120/