java - 如何读取文件 : Properties > Details > Content > Pages e. g。对于word文档

标签 java file properties

当您在 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/

相关文章:

html - 无法设置未定义的属性 'width'

java - writeArray 二进制文件未在 readArray 中显示完整数组

java - 如何让 Jackson 在序列化时不将字段输出到 XML

file - 什么对性能更好 - 一个目录中有多个文件,还是多个子目录每个都有一个文件?

c++ - 如何在不将其用作行尾的情况下将 "\"输出到文件

c# - 如何在 C# 中迭代​​匿名对象的属性?

c# - 使用c#向word添加自定义文档属性

java - XStream 使用 toXML(Object, StreamWriter) 缺少换行符

Java程序: need current Date in YYYY-MM-DD format without time in Date datatype

c++ - 如何从 main.cpp 文件中的单独 cpp 文件调用函数?