Aspose.Words for .NET使用文档教程(1):文档概述
Aspose.Words无需Microsoft Word也可在任何平台上满足Word文档的一切操作需求。本文将与大家分享如何检测文件格式和检查格式兼容性。
【下载Aspose.Words for .NET最新试用版】
文档概述
Document是Aspose.Words中的中心类,代表文档并提供各种文档属性和方法,如保存或保护文档。
无论你想用Aspose.Words执行什么:从头开始创建一个新文档,打开一个用于邮件合并的模板,从文档中获取不同的部分等等,使用Document类都可以实现。Document对象包含所有内容和格式,样式, 内置和自定义属性以及用于邮件合并的MailMerge对象。
document允许你检索整个文档或单独部分的文本,书签和表单字段。document包含Section对象的集合,便于你获取特定部分或执行某些操作,如复制/移动部分。文档可以随时保存到文件或流中。文档也可以发送到客户端浏览器。
使用文档属性
文档属性允许一些有用的信息与文档一起存储。有系统(内置)和用户定义(自定义)属性。内置属性包含文档标题,作者姓名,文档统计信息等内容。自定义属性只有名称和值,可由用户定义。你可以在文档自动化项目中使用文档属性来存储一些有用的信息,例如文档被接收/处理/加盖时间等等。
在Microsoft Word中访问文档属性
在Microsoft Word中,你可以使用File|Properties 菜单查看文档属性。
在Aspose.Words中访问文档属性
要在Aspose.Words中访问文档属性,请执行以下操作:
- 要获取内置文档属性,请使用Document.BuiltInDocumentProperties。
- 要获取自定义文档属性,请使用Document.CustomDocumentProperties。
Document.BuiltInDocumentProperties 返回BuiltInDocumentProperties对象,Document.CustomDocumentProperties 返回CustomDocumentProperties对象。 这两个对象都是DocumentProperty对象的集合。这些对象可以通过索引器属性通过名称或索引获得。此外,BuiltInDocumentProperties 还通过一组返回适当类型值的类型属性提供对文档属性的访问。CustomDocumentProperties 允许从文档中添加或删除文档属性。下面的代码示例显示了如何枚举文档中的所有内置属性和自定义属性。
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
string fileName = dataDir + "Properties.doc";
Document doc = new Document(fileName);
Console.WriteLine("1. Document name: {0}", fileName);
Console.WriteLine("2. Built-in Properties");
foreach (DocumentProperty prop in doc.BuiltInDocumentProperties)
Console.WriteLine("{0} : {1}", prop.Name, prop.Value);
Console.WriteLine("3. Custom Properties");
foreach (DocumentProperty prop in doc.CustomDocumentProperties)
Console.WriteLine("{0} : {1}", prop.Name, prop.Value);
DocumentProperty类允许你获取文档属性的名称,值和类型:
- 要获取属性的名称,请使用DocumentProperty.Name。
- 要获取属性的值,请使用DocumentProperty.Value。DocumentProperty.Value 返回一个Object,但是有一组方法允许你获取转换为特定类型的属性的值。
- 要获取属性的类型,请使用DocumentProperty.Type。使用此属性会返回PropertyType的枚举值之一。在了解属性的类型后,可以使用 DocumentProperty.ToXXX 方法(如DocumentProperty.ToString和DocumentProperty.ToInt)来获取相应类型的值,而不是获取 DocumentProperty.Value。
更新内置文档属性
虽然Microsoft Word会在需要时自动更新某些文档属性,但Aspose.Words不会自动更改任何属性。例如,Microsoft Word会更新文档上次打印,保存的时间,更新统计属性(单词,段落,字符等计数)。
Aspose.Words不会自动更新任何属性,但提供了更新某些统计内置文档属性的方法。调用Document.UpdateWordCount方法重新计算并更新 BuiltInDocumentProperties 集合中的BuiltInDocumentProperties.Characters,BuiltInDocumentProperties.CharactersWithSpaces,BuiltInDocumentProperties.Words 和 BuiltInDocumentProperties.Paragraphs属性。这将确保它们与打开或创建文档后所做的更改同步。
添加或删除文档属性
你无法在Aspose.Words中添加或删除内置文档属性,只能更改它们的值。要在Aspose.Words中添加自定义文档属性,请使用 CustomDocumentProperties.Add 传递新属性的名称和相应类型的值。 该方法返回新创建的DocumentProperty 对象。下面的代码示例显示了如何检查文档中是否存在具有给定名称的自定义属性,并添加更多自定义文档属性。
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document doc = new Document(dataDir + "Properties.doc");
CustomDocumentProperties props = doc.CustomDocumentProperties;
if (props["Authorized"] == null)
{
props.Add("Authorized", true);
props.Add("Authorized By", "John Smith");
props.Add("Authorized Date", DateTime.Today);
props.Add("Authorized Revision", doc.BuiltInDocumentProperties.RevisionNumber);
props.Add("Authorized Amount", 123.45);
}
若要删除自定义属性,请使用 DocumentPropertyCollection.Remove 传递要删除的属性的名称。下面的代码示例显示了如何删除自定义文档属性。
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document doc = new Document(dataDir + "Properties.doc");
doc.CustomDocumentProperties.Remove("Authorized Date");
下篇文章将与大家分享复制文档、保护文档等。如果你有任何问题或意见,欢迎在下方评论区留言~
相关文章
- Sandcastle方法生成c#.net帮助类帮助文档chm
- ASP .NET CORE MVC 部署Windows 系统上 IIS具体步骤---.Net Core 部署到 IIS位系统中的步骤
- 在 ASP.NET Core 具体使用文档
- .NET开源Protobuf-net组件葵花手册
- .Net魔法堂:提取注释生成API文档
- ASP.NET生成验证码
- Asp.Net Web API 2第十七课——Creating an OData Endpoint in ASP.NET Web API 2(OData终结点)
- 集成Swagger接口文档分组配置.net core
- 一个.Net的混淆防反编译工具ConfuserEx
- C# Protobuf-Net 序列化
- ASP.NET Core 6框架揭秘实例演示[31]:路由高阶用法
- ASP.NET Web API自身对CORS的支持: EnableCorsAttribute特性背后的故事
- .NET平台开源项目速览(14)最快的对象映射组件Tiny Mapper
- 常见掌握类库与工具体系图 艾提拉总结 Atitit 文档资料处理重要类库与工具体系树 Configuration yml xml jsoup Net apache commons net
- Atitit ..Net Framework sdk 3.0 3.5 4.04.5 4.6 4.7 .net core版本新特性 v2 s22 1. 新特性来源于 down ms 官方网站1
- VB.net:VB.net编程语言学习之基于VS软件连接SQL Server(利用ADO.NET操作数据库/添加新数据源/DataGridView数据表格控件)的简介、案例应用之详细攻略
- net start mysql 无法启动mysql解决方案之一【NET HELPMSG 3534】
- java.net.UnknownHostException: unknown host:XXXX异常解决办法
- C# .NET 获取枚举值的自定义属性
- java.net.ConnectException: Call From slaver1/192.168.19.128 to slaver1:8020 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org
- 邮件系统利器:MailBee.NET Objects v12.3.1
- .Net Core3.1 swagger 文档添加 不用xml配置