Java 添加、读取、修改、删除Word文档属性
Word文档属性包括常规、摘要、统计、内容、自定义等,其中摘要包括标题、主题、作者、经理、单位、类别、关键词、备注等项目,通过设置这些摘要信息或自定义属性可方便对文档的管理。本文中将主要介绍对文档摘要信息的添加,以及读取或者编辑、删除文档中已设置的摘要信息或自定义文档信息。下面将通过Java代码详细介绍。
使用工具:Free Spire.Doc for Java (免费版)
Jar文件获取及导入:
方法1:通过官网下载。下载后,解压,将lib文件夹下的Spire.Doc.jar文件导入java程序。
方法2:通过maven安装导入。
【添加Word文档属性】
import com.spire.doc.*;
import java.sql.Date;
import java.time.Clock;
import java.time.LocalDate; public class AddDocumentProperty {
public static void main(String[] args){
//加载测试文档
Document doc = new Document("test.docx"); //设置内置文档属性
doc.getBuiltinDocumentProperties().setTitle("操作手册");
doc.getBuiltinDocumentProperties().setSubject("Word文档");
doc.getBuiltinDocumentProperties().setCategory("A类");
doc.getBuiltinDocumentProperties().setCompany("Alibaba");
doc.getBuiltinDocumentProperties().setManager("Jamy");
doc.getBuiltinDocumentProperties().setAuthor("LiuHan");
doc.getBuiltinDocumentProperties().setKeywords("操作手册,说明书,要件");
doc.getBuiltinDocumentProperties().setComments("此文档仅供内部使用");
doc.getBuiltinDocumentProperties().setCreateDate(Date.valueOf(LocalDate.of(2019,7,1)));
doc.getBuiltinDocumentProperties().setLastSaveDate(Date.valueOf(LocalDate.now(Clock.systemUTC())));
doc.getBuiltinDocumentProperties().setRevisionNumber("2"); //设置自定义文档属性
doc.getCustomDocumentProperties().add("文档创建级别","B级");
doc.getCustomDocumentProperties().add("行政文件否","否"); //保存文档
doc.saveToFile("SetProperty.docx",FileFormat.Docx_2013);
doc.dispose();
}
}
属性添加效果:


【读取Word文档属性】
import com.spire.doc.*;
public class ReadDocumentProperty {
public static void main(String[]args){
//加载文档
Document doc = new Document("SetProperty.docx");
//读取内置文档属性
System.out.println("标题: " + doc.getBuiltinDocumentProperties().getTitle());
System.out.println("主题: " + doc.getBuiltinDocumentProperties().getSubject());
System.out.println("作者: " + doc.getBuiltinDocumentProperties().getAuthor());
System.out.println("单位: " + doc.getBuiltinDocumentProperties().getCompany());
System.out.println("主管: " + doc.getBuiltinDocumentProperties().getManager());
System.out.println("类别: " + doc.getBuiltinDocumentProperties().getCategory());
System.out.println("关键字:" + doc.getBuiltinDocumentProperties().getKeywords());
System.out.println("备注: " + doc.getBuiltinDocumentProperties().getComments());
//获取自定义文档属性
DocumentProperty property = doc.getCustomDocumentProperties().get(0);
//读取自定义文档属性的名称和值
System.out.println("名称: " + property.getName());
System.out.println("值: " + property.getValue());
}
}
文档属性读取结果:

【修改/删除文档属性】
import com.spire.doc.*;
public class RemoveDocumentProperty {
public static void main(String[] args) {
//加载文档
Document doc = new Document();
doc.loadFromFile("SetProperty.docx");
//直接通过为内置属性赋值新的内容,修改原有摘要信息
doc.getBuiltinDocumentProperties().setTitle("说明书");
doc.getBuiltinDocumentProperties().setSubject("测试使用");
doc.getBuiltinDocumentProperties().setCategory("B类");
doc.getBuiltinDocumentProperties().setCompany("保密");
//设置内置属性值为空,删除原有摘要信息
doc.getBuiltinDocumentProperties().setManager("");
doc.getBuiltinDocumentProperties().setAuthor("");
doc.getBuiltinDocumentProperties().setKeywords("");
doc.getBuiltinDocumentProperties().setComments("");
doc.getBuiltinDocumentProperties().setRevisionNumber("");
//通过方法删除指定属性内容
doc.getCustomDocumentProperties().remove("文档创建级别");
doc.getCustomDocumentProperties().remove("行政文件否");
//保存文档
doc.saveToFile("RemoveProperty.docx",FileFormat.Docx_2013);
doc.dispose();
}
}
修改/删除结果:


(本文完)
Java 添加、读取、修改、删除Word文档属性的更多相关文章
- Java 添加、读取、删除PPT文档属性
文档属性是一些描述性的信息,它未包含在文件的实际内容中,但提供了有关文件的信息,可用来帮助查找和整理文件.以下示例中将介绍通过Java程序来添加PPT文档属性.读取.删除PPT文档中已有属性的方法. ...
- Java 添加、读取、删除Excel文档属性
在文档属性中,可以设置诸多关于文档的信息,如创建时间.作者.单位.类别.关键词.备注等摘要信息以及一些自定义的文档属性.下面将通过Java程序来演示如何设置,同时对文档内的已有信息,也可以实现读取和删 ...
- C# 添加、读取、删除Excel文档属性
在文档属性中,可以设置诸多关于文档的信息,如创建时间.作者.单位.类别.关键词.备注等摘要信息以及一些自定义的文档属性.下面将通过C#程序来演示如何设置,同时对文档内的已有信息,也可以实现读取或删除等 ...
- Java 添加超链接到Word文档
对特定元素添加超链接后,用户可以通过点击被链接的元素来激活这些链接,通常在被链接的元素下带有下划线或者以不同的颜色显示来进行区分.按照使用对象的不同,链接可以分为文本超链接,图像超链接,E-mail链 ...
- Java 用Freemarker完美导出word文档(带图片)
Java 用Freemarker完美导出word文档(带图片) 前言 最近在项目中,因客户要求,将页面内容(如合同协议)导出成word,在网上翻了好多,感觉太乱了,不过最后还是较好解决了这个问题. ...
- Java jacob调用打印机打印word文档
前面说了Java如何生成复杂的Word文档,今年记录下Java如何调用打印机打印word文档. 起初用的是自带的PrintJob,但是系统提供的打印机制并不成熟完整.网上的代码也是千篇一律,在我的打印 ...
- 微信公众号怎么添加附件?比如word文档,pdf文件等
微信公众号怎么添加附件?比如word文档,pdf文件等 我们都知道创建一个微信公众号,在公众号中发布一些文章是非常简单的,但公众号添加附件下载的功能却被限制,如今可以使用小程序“微附件”进行在公众 ...
- Java导出freemarker实现下载word文档格式功能
首先呢,先说一下制作freemarker模板步骤, 1. 在WPS上写出所要的下载的word格式当做模板 2. 把模板内不固定的内容(例:从数据库读取的信息)写成123或者好代替的文字标注 3. 把固 ...
- 使用Java POI来选择提取Word文档中的表格信息
通过使用Java POI来提取Word(1992)文档中的表格信息,其中POI支持不同的ms文档类型,在具体操作中需要注意.本文主要是通过POI来提取微软2003文档中的表格信息,具体code如下(事 ...
随机推荐
- 类和对象(day19整理)
目录 面对对象和面对过程编程 什么是面向对象 什么是面向过程编程 什么是面对对象编程 类 类的定义 定义类时发生的事情 __dict__和. 对象 名称空间 __init__函数 调用类发生的事情 对 ...
- Veins(车载通信仿真框架)入门教程(四)——调试及记录结果
Veins(车载通信仿真框架)入门教程(四)——调试及记录结果 在Veins入门教程(三)最后的动图中(如下图)可以看到大大小小的光圈,这个怎么实现的呢? 很简单,以收到RTS消息为例,通过finHo ...
- 网络数据请求request
关于网络数据请求的类很多,httpwebrequest,webrequest,webclient以及httpclient,具体差别在此不在赘述,在应用方面介绍webclient与httpclient则 ...
- Java ArrayList底层实现原理源码详细分析Jdk8
简介 ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存. ArrayList不是线程安全的,只能用在单线程环境下,多线程环境下可以考虑用 ...
- Python的深浅拷贝
Python的深浅拷贝 深浅拷贝 1. 赋值,对于list, set, dict来说, 直接赋值. 其实是把内存地址交给变量并不是复制一份内容 list1 = [']] list2 = list1 p ...
- 关于生成器generator
generator:个人认为是产生值的,和列表生成式类似,但是比列表生成式更加节省空间 我们平常自己构造的函数中,一般返回值时都会使用return,在generator中,我们使用的是yield yi ...
- 学习笔记11全局处理程序global.asax
*全局处理程序Clobal.asax只能叫这个名字,不能修改文件名,如果网站没有的话,可以自己添加. *Application[]类似于session,是全局的,Application["k ...
- 口胡题fr
T1五种贡献恶心的要死.$1.grand$$2.father$$3.brother$$4.son$$5.grandson$我们选择维护三个量.1.儿子和,$sx$2.孙子和,$gsx$3.自己的值,$ ...
- CSPS模拟 72
状态..找不回来了.. T2 简单的期望 考试的时候忘考虑一个事,就是连续多位进位的情况 考试的时候打出$n^2$复杂度dp还没引起怀疑真是不应该. T3 简单的操作 最后一刻才想到图不联通,已经想不 ...
- Java加密、解密Word文档
对一些重要文档,我们为保证其文档内容不被泄露,常需要对文件进行加密,查看文件时,需要正确输入密码才能打开文件.下面介绍了一种比较简单的方法给Word文件添加密码保护以及如何给已加密的Word文件取消密 ...