您的位置:首页 > 产品设计 > UI/UE

[转]how to programatically access built-in properties of open xml word doc(如何读取open xml格式文档属性)

2011-11-02 17:35 941 查看
WordprocessingDocument wordprocessingDocument = WordprocessingDocument.Open(filePath, true);
Body body = wordprocessingDocument.MainDocumentPart.Document.Body;
String message = string.Empty;

ExtendedFilePropertiesPart appPart = wordprocessingDocument.ExtendedFilePropertiesPart;
Manager = appPart.Properties.Manager.InnerText;
if (Manager != null)
message = "Manager : " + Manager + "\n";

//Access company property
Company = appPart.Properties.Company.Text;
if (Company != null)
message += "Company : " + Company + "\n";

CoreFilePropertiesPart corePart = wordprocessingDocument.CoreFilePropertiesPart;
XmlDocument xmlProperties = new XmlDocument();
xmlProperties.Load(corePart.GetStream());

//Access Title property
Title = xmlProperties.GetElementsByTagName("title",DC).Item(0).InnerText;
if (Title != null)
message += "Title : " + Title + "\n";

//Access Subject property
Subject = xmlProperties.GetElementsByTagName("subject", DC).Item(0).InnerText;
if (Subject != null)
message += "Subject : " + Subject + "\n";

//Access Author property
Author = xmlProperties.GetElementsByTagName("creator", DC).Item(0).InnerText;
if (Author != null)
message += "Author : " + Author + "\n";

//Access Keywords property
KeyWords = xmlProperties.GetElementsByTagName("keywords", CP).Item(0).InnerText;
if (KeyWords != null)
message += "KeyWords : " + KeyWords + "\n";

//Access Comments property
Comments = xmlProperties.GetElementsByTagName("description", DC).Item(0).InnerText;
if (Comments != null)
message += "Comments : " + Comments + "\n";

//Access Category property
Category = xmlProperties.GetElementsByTagName("category", CP).Item(0).InnerText;
if (Category != null)
message += "Category : " + Category + "\n";

MessageBox.Show(message, "Built-In Properties", MessageBoxButtons.OK, MessageBoxIcon.Information);

wordprocessingDocument.Close();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐