本文通过Java程序代码来展示如何来加载、操作及保存WPS格式的文字文档。

一、基本步骤:加载时,通过流加载WPS文字文档,完成相关文字操作后,再将结果文档保存到流,将流写入WPS文档,闭关闭流。

二、程序环境

这里使用的是Word类库工具Free Spire.Doc for Java,可参考如下步骤手动将D:\包\JAVA Doc\Spire.Doc-FE_3.9.0\lib\Spire.Doc.jar文件夹(该jar包需要事前下载到本地,然后解压)路径下的jar文件导入Java程序:

完成导入,如下导入结果:

三、Java代码

这里对WPS文字文档的操作进行了段落背景设置、文字高亮、加粗、添加图片等简单操作。

import com.spire.doc.*;
import com.spire.doc.documents.HorizontalAlignment;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.TextSelection;
import com.spire.doc.documents.TextWrappingStyle;
import com.spire.doc.fields.DocPicture; import java.awt.*;
import java.io.*; public class OperateWPS_Word {
public static void main(String[] args)throws IOException {
//通过流加载WPS文字文档
FileInputStream inputStream = new FileInputStream(new File("test.wps"));
Document document = new Document();
document.loadFromStream(inputStream, FileFormat.Doc); //查找所有“北京冬奥会”文本
TextSelection[] textSelections = document.findAllString("北京冬奥会", false, false);
//设置文本高亮色、加粗
for (TextSelection selection : textSelections)
{
selection.getAsOneRange().getCharacterFormat().setHighlightColor(Color.YELLOW);
selection.getAsOneRange().getCharacterFormat().setBold(true);
} //获取文档的第一个节
Section section = document.getSections().get(0); //获取第2段,设置段落背景色
Paragraph paragraph1 = section.getParagraphs().get(1);
paragraph1.getFormat().setBackColor(new Color(176,224,230));
paragraph1.getStyle().getParagraphFormat().setHorizontalAlignment(HorizontalAlignment.Center); //获取第3段,添加图片到段落
Paragraph paragraph2 = section.getParagraphs().get(2);
DocPicture picture = paragraph2.appendPicture("img.png");
picture.setWidth(200f);
picture.setHeight(250f);
picture.setTextWrappingStyle(TextWrappingStyle.Through); //将结果文档保存到流
ByteArrayOutputStream bos = new ByteArrayOutputStream();
document.saveToStream(bos, FileFormat.Doc);
//将流写入WPS文档
FileOutputStream fos = new FileOutputStream("Output.wps");
fos.write(bos.toByteArray());
//关闭流
bos.close();
fos.close();
}
}

测试前的WPS文字文档:

完成操作后的WPS文字文档:

关于使用Java如何操作Word文档的更多方法,可前往:https://www.cnblogs.com/Yesi/category/1460010.html

—End—

Java 加载、操作和保存WPS文字文档的更多相关文章

  1. Javascript动态加载Html元素到页面Dom文档结构时执行顺序的不同

    我们有时会通过ajax动态获取一段Html代码,并且将这段代码通过javascript放到页面的Dom结构中去. 而很多时候通过ajax动态获取的Html代码中也包含javascript代码,有一点需 ...

  2. Java 加载、编辑和保存WPS表格文件(.et/.ett)

    WPS表格文件是金山开发的专门用于处理表格数据的Office工具,属于WPS Office中WPS文字.WPS表格和WPS演示三大功能模块之一.通常以.et和.ett作为文件后缀.我们在通过后端来操作 ...

  3. JAVA加载Properties配置资源文件

    JAVA加载Properties配置资源文件 制作人:全心全意 配置文件(资源文件):以properties作为拓展名的文件 Java代码是如何加载properties文件的? 必须使用Propert ...

  4. “Word自动更改后的内容保存到通用文档模板上。是否加载该模板?“的解决办法

    在win7系统下,Word2010出现了不能正常关闭.打开一个已有word文档,点击右上角关闭按钮后,先提示"word已停止工作,windows正在检查该问题的解决方案",随后提示 ...

  5. swift 基础小结01 --delegate、Optional、GCD的使用、request请求、网络加载图片并保存到沙箱、闭包以及桥接

    本文主要记录swift中delegate的使用.“?!”Optional的概念.GCD的使用.request请求.网络加载图片并保存到沙箱.闭包以及桥接. 一.delegate的使用 swift中de ...

  6. java加载property文件配置

    1 properties简介: properties是一种文本文件,内容格式为:     key = value     #单行注释 适合作为简单配置文件使用,通常作为参数配置.国际化资源文件使用. ...

  7. Android Phonebook编写联系人UI加载及联系人保存流程(一)

    2014-01-06 17:05:11 将百度空间里的东西移过来. 本文适合ROM定制做Phonebook的童鞋看,其他人飘过即可- Phonebook添加/编辑联系人UI加载及保存联系人流程,是一系 ...

  8. Java加载资源文件的两种方法

    处理配置文件对于Java程序员来说再常见不过了,不管是Servlet,Spring,抑或是Structs,都需要与配置文件打交道.Java将配置文件当作一种资源(resource)来处理,并且提供了两 ...

  9. java加载properties文件的六中基本方式实现

    java加载properties文件的方式主要分为两大类:一种是通过import java.util.Properties类中的load(InputStream in)方法加载: 另一种是通过impo ...

随机推荐

  1. Python分析离散心率信号(下)

    Python分析离散心率信号(下) 如何使用动态阈值,信号过滤和离群值检测来改善峰值检测. 一些理论和背景 到目前为止,一直在研究如何分析心率信号并从中提取最广泛使用的时域和频域度量.但是,使用的信号 ...

  2. 开发掉坑(一)tar命令解压文件覆盖源文件

    今天在编译机上编译前端代码,报了找不到依赖的异常.检查后发现是node_modules/.bin下少了一些文件. 一开始疑惑为什么本地能成功生成软链在node_modules/.bin,服务器上面却不 ...

  3. 5.7w字?GitHub标星120K的Java面试知识点总结,真就物超所值了

    如果你觉得在一些程序员平台获取到的资料太乱学习起来毫无头绪,但是单看<Java编程思想>相似的一类的Java圣经"枯燥无味",那我推荐你看一下这份GitHub获得过12 ...

  4. JavaFx 创建快捷方式及设置开机启动

    原文地址:JavaFx 创建快捷方式及设置开机启动 | Stars-One的杂货小窝 原本是想整个桌面启动器,需要在windows平台上实现开机启动,但我的软件都是jar文件,不是传统的exe文件,也 ...

  5. 【NX二次开发】分析曲线某位置的信息 UF_MODL_ask_curve_props

    分析曲线某位置的信息:点.切线.主副法线.半径等 extern DllExport void ufsta(char *param, int *returnCode, int rlen) { UF_in ...

  6. React-Antd4的Form表单校验

    之前很少用react做项目,最近入职新公司,用的react,在自己的摸索过程中,慢慢会记录一些使用方法.今天简单记录一下使用antd 4.0版本的Form表单校验,直接代码. 需要购买阿里云产品和服务 ...

  7. 『无为则无心』Python序列 — 18、Python列表概念及常用操作API

    目录 1.列表的概念 (1)列表的定义 (2)列表的应用场景 (3)列表的定义格式 2.列表的常用操作 (1)列表的查找 1)通过下标查找 2)通过方法查找 3)判断是否存在 (2)列表的增加 @1. ...

  8. 7、linux防火墙的使用(iptables)

    7.1.说明: CentOS 7 系统默认的防火墙是 Filewalld.不过,现在应该还有很多用户习惯使用 iptables.本文以 CentOS 7 为例, 说明在 CentOS 7 中如何安装并 ...

  9. 35、cobbler自动化安装操作系统

    35.1.cobbler介绍: Cobbler是独立的,不需要先安装Kickstart然后再安装Cobbler: Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速 ...

  10. 编译x86_64 Linux内核并基于QEMU运行

    编译并运行内核镜像 安装包准备 $ sudo apt install git $ sudo apt install build-essential kernel-package fakeroot li ...