任何人都可以向我解释,如何在以下场景中继续进行?
我需要将自定义属性(即文件的新元数据,例如具有值敏感的示例classification_of_file)添加到所有文件,如txt,pdf,doc,docx,ppt pptx,xls,xlsx等。使用JAVA然后我当我使用资源管理器右键单击特定文件时,想要在Windows属性中看到此自定义属性信息。
注意:
答案 0 :(得分:0)
当您使用资源管理器右键单击某个文件时,您是在谈论特定文件的Windows属性吗?
如果是这样,您需要使用Java API来处理文件属性,精确地UserDefinedFileAttributeView
。
您可以使用此视图在特定文件上写下您可能需要的任何属性。
Path path = FileSystems.getDefault().getPath("C:/file.txt");
UserDefinedFileAttributeView view =
Files.getFileAttributeView(path, UserDefinedFileAttributeView.class);
view.write("classification_of_file", Charset.defaultCharset().encode("sensitive"));
您也可以致电FileStore.supportsFileAttributeView()
检查您的文件系统是否支持它。
您可以在Java documentation中找到有关文件属性的更多说明。
关于第二点,我不知道Apache Jackrabbit,所以我无法帮助你。
答案 1 :(得分:0)
Apache Jackrabbit无法帮助您设置存储在文件系统中的文件的属性。
它可以很好地管理它自己存储的文件的任何类型的元数据,以及可以通过WebDAV提供的文件,但这需要将文件存储在JCR存储库中。