我正在尝试从MS Office 2013文件(docx,xlsx,pptx ...)中获取"Last Save by"属性。我正在使用Apache POI,但我只能使用以下代码获取文件的作者:
OPCPackage pkg = OPCPackage.open(file);
POIXMLProperties props = new POIXMLProperties(pkg);
props.getCoreProperties().getCreator();
有没有办法获得"上次保存者"属性?
查看 Apache POI OOXML 属性提取器作为此类问题的良好灵感来源,我们看到您需要做的是
OPCPackage pkg = OPCPackage.open(file);
POIXMLProperties props = new POIXMLProperties(pkg);
PackagePropertiesPart ppropsPart = props.getCoreProperties().getUnderlyingProperties();
Date created = ppropsPart.getCreatedProperty().getValue();
Date modified = ppropsPart.getModifiedProperty().getValue();
String lastModifiedBy = ppropsPart.getLastModifiedByProperty().getValue();
这将为您提供上次修改文件的人,创建时间和时间
这应该有效(未测试):
OPCPackage pkg = OPCPackage.open(file);
pkg.getPackageProperties().getLastModifiedByProperty();
请参阅:POI API 文档