目录

  • 1、加载Aspose包
  • 2、配置license
  • 3、实现

1、加载Aspose包

1、下载:
Aspose官网没有提供相应的maven地址,所有手动引入jar包:

  • aspose-words-18.10-jdk16.jar

下载地址:https://download.csdn.net/download/zhuocailing3390/76147206

2、配置lib目录:
在项目的resources目录下,创建lib目录,并且将下载的jar包放入其中

3、引入pom:
引入自定义配置的maven坐标:

 <dependencys><dependency><groupId>com.aspose.words</groupId><artifactId>aspose-words</artifactId><version>words-18.10-jdk16</version><scope>system</scope><systemPath>${project.basedir}/src/main/resources/lib/aspose-words-18.10-jdk16.jar</systemPath></dependency></dependencys>

2、配置license

resources目录下创建license.xml文件,代码如下:

<License><Data><Products><Product>Aspose.Total for Java</Product><Product>Aspose.Words for Java</Product></Products><EditionType>Enterprise</EditionType><SubscriptionExpiry>20991231</SubscriptionExpiry><LicenseExpiry>20991231</LicenseExpiry><SerialNumber>8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7</SerialNumber></Data><Signature>sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=</Signature>
</License>

3、实现

代码:

@Controller
@RequestMapping("/aspose")
public class AsposeController {@RequestMapping("/replaceByString")@ResponseBodypublic static void replaceByString() {try {if (!getLicense()) {throw new RuntimeException("文件替换失败!");}FindReplaceOptions options = new FindReplaceOptions();options.setMatchCase(false);// 方式一:直接指定原word位置Document document = new Document("C:\\Users\\LiGezZ\\Desktop\\test.docx");/*方式二:*如果原word在项目的resources目录下,可以使用ClassPathResource进行加载String path = "/word/test.docx";FileInputStream inputStream = new FileInputStream(new ClassPathResource(path).getFile());Document document = new Document(inputStream);*/document.getRange().replace("${name}", "文件替换有限公司", options);// 存储方式一:将提交后的文件输出到指定目录,也可以直接在浏览器进行下载不进行本地储存File outFile = new File("C:\\Users\\LiGezZ\\Desktop\\testReplace.docx");try (FileOutputStream fos = new FileOutputStream(outFile )) {// 输出方式一:输出为worddocument.save(fos, SaveFormat.WORD_ML);// 输出方式二:输出为PDF,需要将输出文件的后缀修改为.pdf,比如:testReplace.pdf// document.save(fos, SaveFormat.PDF);/* 存储方式二:* 如果是输出到浏览器直接下载* 那么将FileOutputStream fos = new FileOutputStream(pdfFile)替换为* ByteArrayOutputStream fos = new ByteArrayOutputStream()response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, "UTF-8"));byte[] buffer = fos.toByteArray();InputStream arrayInputStream = new ByteArrayInputStream(buffer);byte[] buf = new byte[4096];int len = -1;while ((len = arrayInputStream.read(buf)) != -1) {response.getOutputStream().write(buf, 0, len);}*/}} catch (Exception e) {e.printStackTrace();throw new RuntimeException("文件替换失败!");}}// 验证aspose文件private static boolean getLicense() {boolean result = false;try (InputStream in = Doc2PdfUtil.class.getClassLoader().getResourceAsStream("license.xml")) {// 需要引入com.aspose.words.License的包;License license = new License();license.setLicense(in);result = true;} catch (Exception e) {e.printStackTrace();}return result;}
}

测试:

比如浏览器请求接口:http://localhost:9898/aspose/replaceByString

Java-Aspose实现Word文字替换(本地储存或浏览器下载)相关推荐

  1. java word格式 导出图表和表格 浏览器下载 支持生成扇形图,条形图等

    1.导入依赖 环境 依赖 Apache的POI.FreeMarker和XDocreport xchart <dependency><groupId>fr.opensagres. ...

  2. java aspose 统计word文档正文页码总数

    LayoutCollector 布局收集器 方法:getEndPageIndex(Node node)        //获取当前节点所在页码 //统计正文总页码 //真实页码数 int realPa ...

  3. java 使用POI导出复杂excel表格,通过浏览器下载

    pom.xml依赖 <!--POI Excel表格导出依赖--> <dependency><groupId>org.apache.poi</groupId&g ...

  4. java Aspose.Words实现Word生成表格并下载至本地

    一.Maven加入Aspose.Words依赖 <dependency><groupId>com.aspose</groupId><artifactId> ...

  5. Java项目在Linux环境使用aspose把word转pdf乱码问题

    Java项目在Linux环境使用aspose把word转pdf乱码问题 一.问题 在项目中有word转pdf并展示的功能,在本地的windows环境下没有问题.但是放在Linux中部署运行,生成的pd ...

  6. java openxml 操作 word,(三)、JAVA基于OPENXML的word文档插入、合并、替换操作系列之html转word...

    (三).JAVA基于OPENXML的word文档插入.合并.替换操作系列之html转word 系列笔记传送门 富文本转word文档 准备待转换内容 内容清理与格式化 转换成word文档 输出结果展示 ...

  7. java poi实现Word生成表格并下载至本地

    首先我来讲一下需要用到的类: XWPFDocument代表一个docx文档,其可以用来读docx文档,也可以用来写docx文档 XWPFParagraph代表文档.表格.标题等种的段落,由多个XWPF ...

  8. java word转pdf,docx4j转pdf,docx4j导出pdf乱码,docx4j导出pdf丢失插画和图片,aspose将word转pdf 一共两种方法

    前言:一共有docx4j转pdf,aspose转pdf两种方式,不需要设置模板!!! java转pdf目前本人使用有两种方法,下面是方法代码 ps:因为本人是云桌面开发,所以只作截图,具体代码需要自己 ...

  9. Word处理控件Aspose.Words功能演示:使用Java合并MS Word文档

    在各种情况下,可能需要合并多个MS Word文档,例如减少文档数量,在单个文件中保留相似种类的内容(即发票)等.许多在线应用程序使您可以合并两个或多个MS Word文档但是,您可能需要在自己的Web或 ...

  10. java中实现word(doc、docx)中完美提取文字、表格为结构化数据

    java poi word文字表格结构化抽取 目的 好处 概述及依赖 开始 抽取 核心思想: 常量定义 结构化javabean类: WordTableCell类: WordTable类: WordCo ...

最新文章

  1. 技术图文:如何利用BigOne的API制作自动化交易系统 -- 获取账户资产
  2. Altium Designer Bottom Solder层的作用
  3. java logfaction_Java调试的变迁:从System.out.println到log4j
  4. 20万数据 sql 快还是 java快?_H2数据库学习(一)
  5. 在JavaScript中以日期/月/年格式获取当前日期
  6. java创建两个foo方法_Java类实例化原理 - osc_foo7glsg的个人空间 - OSCHINA - 中文开源技术交流社区...
  7. Kali Linux 秘籍 第四章 信息收集
  8. linux集群组建和管理,Redis集群搭建与管理
  9. 三步搞定android应用底部导航栏
  10. 三十五岁后,就不能做软件测试了?
  11. 江苏大学矩阵论、数理统计期末考试复习
  12. 最新回归算法理解、实现及应用(1)线性回归
  13. FFmpeg获取H264文件的帧率
  14. echarts字体大小自适应
  15. cannot find zipfile directory
  16. 商用清洁机器人:科沃斯“破圈”、高仙机器人“纵深”
  17. C语言计算5+55+555+5555+55555
  18. 苹果平板id怎么注册_怎么做成苹果笔记?苹果平板怎么做笔记? - 敬业签便签...
  19. 改进YOLOv8 | 即插即用篇 | 全维动态卷积 |《 OMNI-DIMENSIONAL DYNAMIC CONVOLUTION》
  20. Windows Media Player 修复

热门文章

  1. 您的自动化测试糟透了
  2. 拳皇世界6月13服务器维护,拳皇世界闪退怎么办 对症下药马上好
  3. Java制作推箱子小游戏
  4. 软件公司团队管理方法思考
  5. OJ常用术语解释。AC、WA、TLE、CE、RE、MLE、PE等状态术语的解释
  6. 萝卜青菜各有所爱------深谈React和Vue
  7. Android 10 SystemUI 如何隐藏状态栏耳机图标和定位图标
  8. supp 和rdomain连接
  9. http请求 405错误 方法不被允许 (Method not allowed)
  10. 编程实现英文数字到中文大写数字的转换