src/main/java/com/ruoyi/common/utils/poi/WordUtil.java
(开头部分) 2KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
package com.ruoyi.common.utils.poi;
import cn.afterturn.easypoi.word.WordExportUtil;
import org.apache.poi.util.IOUtils;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.springframework.util.Assert;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.FileOutputStream;
import java.net.URLEncoder;
import java.util.Map;
/**
* @description Word相关处理
*/
public class WordUtil{
/**
* EasyPoi 替换数据 导出 word
* @param templatePath word模板地址
* @param tempDir 临时文件存放地址
* @param filename 文件名称
* @param data 替换参数
* @param request
* @param response
*/
public static String easyPoiExport(String templatePath, String tempDir, String filename, Map<String, Object> data, HttpServletRequest request, HttpServletResponse response) {
Assert.notNull(templatePath, "模板路径不能为空");
Assert.notNull(tempDir, "临时文件路径不能为空");
Assert.notNull(filename, "文件名称不能为空");
Assert.isTrue(filename.endsWith(".docx"), "文件名称仅支持docx格式");
if (!tempDir.endsWith("/")) {
tempDir = tempDir + File.separator;
}
File file = new File(tempDir);
if (!file.exists()) {
file.mkdirs();
}
FileOutputStream out =null;
XWPFDocument document =null;
try {
String userAgent = request.getHeader("user-agent").toLowerCase();
if (userAgent.contains("msie") || userAgent.contains("like gecko")) {
filename = URLEncoder.encode(filename, "UTF-8");
} else {
filename = new String(filename.getBytes("utf-8"), "ISO-8859-1");
}
document = WordExportUtil.exportWord07(templatePath, data);
String tempPath = tempDir + filename;
System.out.println(tempPath);
后面还有 25 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。
