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文档属性的更多相关文章

  1. Java 添加、读取、删除PPT文档属性

    文档属性是一些描述性的信息,它未包含在文件的实际内容中,但提供了有关文件的信息,可用来帮助查找和整理文件.以下示例中将介绍通过Java程序来添加PPT文档属性.读取.删除PPT文档中已有属性的方法. ...

  2. Java 添加、读取、删除Excel文档属性

    在文档属性中,可以设置诸多关于文档的信息,如创建时间.作者.单位.类别.关键词.备注等摘要信息以及一些自定义的文档属性.下面将通过Java程序来演示如何设置,同时对文档内的已有信息,也可以实现读取和删 ...

  3. C# 添加、读取、删除Excel文档属性

    在文档属性中,可以设置诸多关于文档的信息,如创建时间.作者.单位.类别.关键词.备注等摘要信息以及一些自定义的文档属性.下面将通过C#程序来演示如何设置,同时对文档内的已有信息,也可以实现读取或删除等 ...

  4. Java 添加超链接到Word文档

    对特定元素添加超链接后,用户可以通过点击被链接的元素来激活这些链接,通常在被链接的元素下带有下划线或者以不同的颜色显示来进行区分.按照使用对象的不同,链接可以分为文本超链接,图像超链接,E-mail链 ...

  5. Java 用Freemarker完美导出word文档(带图片)

    Java  用Freemarker完美导出word文档(带图片) 前言 最近在项目中,因客户要求,将页面内容(如合同协议)导出成word,在网上翻了好多,感觉太乱了,不过最后还是较好解决了这个问题. ...

  6. Java jacob调用打印机打印word文档

    前面说了Java如何生成复杂的Word文档,今年记录下Java如何调用打印机打印word文档. 起初用的是自带的PrintJob,但是系统提供的打印机制并不成熟完整.网上的代码也是千篇一律,在我的打印 ...

  7. 微信公众号怎么添加附件?比如word文档,pdf文件等

    微信公众号怎么添加附件?比如word文档,pdf文件等   我们都知道创建一个微信公众号,在公众号中发布一些文章是非常简单的,但公众号添加附件下载的功能却被限制,如今可以使用小程序“微附件”进行在公众 ...

  8. Java导出freemarker实现下载word文档格式功能

    首先呢,先说一下制作freemarker模板步骤, 1. 在WPS上写出所要的下载的word格式当做模板 2. 把模板内不固定的内容(例:从数据库读取的信息)写成123或者好代替的文字标注 3. 把固 ...

  9. 使用Java POI来选择提取Word文档中的表格信息

    通过使用Java POI来提取Word(1992)文档中的表格信息,其中POI支持不同的ms文档类型,在具体操作中需要注意.本文主要是通过POI来提取微软2003文档中的表格信息,具体code如下(事 ...

随机推荐

  1. Opentracing + Uber Jaeger 全链路灰度调用链,Nepxion Discovery

    当网关和服务在实施全链路分布式灰度发布和路由时候,我们需要一款追踪系统来监控网关和服务走的是哪个灰度组,哪个灰度版本,哪个灰度区域,甚至监控从Http Header头部全程传递的灰度规则和路由策略.这 ...

  2. 百万年薪python之路 -- 数据库初始

    一. 数据库初始 1. 为什么要有数据库? ​ 先来一个场景: ​ 假设现在你已经是某大型互联网公司的高级程序员,让你写一个火车票购票系统,来hold住十一期间全国的购票需求,你怎么写? 由于在同一时 ...

  3. 不离开Emacs完成简单程序的编辑编译运行(windows或Linux)

    (1)打开Emacs (2)建立一个新的程序文件. 执行 C-x C-f, 然后在屏幕的底部出现minibuffer,光标提示你输入文件名称, 文件名称要带上后缀名,如hello.cpp.回车,然后开 ...

  4. 防抖与节流 & 若每个请求必须发送,如何平滑地获取最后一个接口返回的数据

    博客地址:https://ainyi.com/79 日常浏览网页中,在进行窗口的 resize.scroll 或者重复点击某按钮发送请求,此时事件处理函数或者接口调用的频率若无限制,则会加重浏览器的负 ...

  5. 设计模式C++描述----12.享元(Flyweight)模式

    一. 概述 在面向对象系统的设计何实现中,创建对象是最为常见的操作. 这里面就有一个问题:如果一个应用程序使用了太多的对象,就会造成很大的存储开销.特别是对于大量轻量级(细粒度)的对象,比如在文档编辑 ...

  6. node-批量上传文件

    很多项目可能都会涉及到的业务是关于多文件上传的,那么需要使用到redis或者第三方库(使用redis)来实现任务队列,甚至需要控制并发量和分包(一次请求传多个文件),这样每次都会以实现功能来完成,但是 ...

  7. Mongo 导出为csv文件

    遇到需要从Mongo库导出到csv的情况,特此记录. 先贴上在mongo目录下命令行的语句: ./mongoexport -h 10.175.54.77 -u userName -p password ...

  8. CSPS模拟 68

    令人kuku的一场考试, T1 令人kuku的贪心,反工了好几次,耗费了1h之久. T2 令人kuku的数据结构,到死也没调出来,还是细节问题,要积累. T3 令人kuku的二分答案. 先二分第一个答 ...

  9. js 将base64转为图片

    var imgurl = response.data; $(".codeimg").attr('src','data:image/png;base64,'+imgurl); var ...

  10. [LINQ2Dapper]最完整Dapper To Linq框架(七)---仓储模式

    目录 [LINQ2Dapper]最完整Dapper To Linq框架(一)---基础查询 [LINQ2Dapper]最完整Dapper To Linq框架(二)---动态化查询 [LINQ2Dapp ...