作者:Tony Qu

在Office 97-2003的文件格式里面中,我们是用SummaryInformation和DocumentSummaryInformation来设置自定义属性的。但OpenXml格式使用了完全不同的极致。

NPOI中,管理OpenXml格式的核心类叫做POIXmlDocument,这和POIFSFileSystem是非常类似的,担负着文件系统管理的职责。而POIXmlDocument.GetProperties则是我们需要关注的重点,它返回的POIXMLProperties实例就是我们需要的自定义属性。

由于XSSFWorkbook和XWPFDocument都继承自POIXmlDocument,所以你真正需要调用的是XSSFWorkbook.GetProperties()和XWPFDocument.GetProperties()。

以下代码是用来设置Custom1自定义属性的:

            if (!workbook.GetProperties().CustomProperties.Contains("Custom1"))
                workbook.GetProperties().CustomProperties.AddProperty("Custom1", "NPOI Demo");

为了防止重复添加同名自定义属性,一定要记得判断它是否已存在。要注意,此操作必须在workbook.Write()之前调用。

Last edited Apr 28, 2014 at 12:34 AM by tonyqus, version 1

Comments

No comments yet.