将自定义属性或元数据添加到文件java

我的文件需要一个称为“使用加密”的额外属性。但这给出了“

IllegalArgumentExeption”。我知道为什么会出现该错误,“使用加密”不被称为属性,但是有没有办法我可以强制这样做呢?还是将自定义元数据添加到文件?

 Path path = new File("/propertyfiles/encdec.properties").toPath();

try{

Files.setAttribute(path, "encryption used", "testtesttest");

}catch(IOException e){

System.out.println(e.getMessage());

}

try{

System.out.println(Files.getAttribute(path, "encryption used"));

}catch(IOException e){

System.out.println(e.getMessage());

}

回答:

如果您的文件系统支持用户定义(也称为扩展)属性,则设置属性的方式应如下所示:

Files.setAttribute(path, "user:encryption used", "testtesttest");

作为javadoc的用于setAttribute解释的那样,第二参数采用一个可选的形式

视图名称

和属性名称。在这种情况下,您需要使用UserDefinedFileAttributeView其视图名称为“

user”的用户。

请注意,不同的文件系统类型支持不同的属性视图,而您的文件系统 可能不 支持该视图。

以上是 将自定义属性或元数据添加到文件java 的全部内容, 来源链接: utcz.com/qa/408649.html

回到顶部