From 4b04e7fd4fcad9af480a003509288aa6070b137e Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期日, 04 二月 2024 13:51:45 +0800 Subject: [PATCH] 修改 --- zt/core/src/main/java/com/zt/modules/oss/cloud/LocalStorageService.java | 16 +++++++++++++++- 1 files changed, 15 insertions(+), 1 deletions(-) diff --git a/zt/core/src/main/java/com/zt/modules/oss/cloud/LocalStorageService.java b/zt/core/src/main/java/com/zt/modules/oss/cloud/LocalStorageService.java index 8a7ef02..59866a2 100644 --- a/zt/core/src/main/java/com/zt/modules/oss/cloud/LocalStorageService.java +++ b/zt/core/src/main/java/com/zt/modules/oss/cloud/LocalStorageService.java @@ -8,6 +8,8 @@ package com.zt.modules.oss.cloud; +import com.aspose.words.Document; +import com.aspose.words.SaveFormat; import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.spire.xls.Workbook; import com.zt.common.exception.ErrorCode; @@ -27,6 +29,7 @@ import javax.servlet.http.HttpServletResponse; import java.io.*; import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; /** * 鏈湴涓婁紶 @@ -151,7 +154,18 @@ documentBytes = outputStream.toByteArray(); headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); } - if (filename.endsWith(".doc") || filename.endsWith(".docx") || filename.endsWith(".xlsx")) { + + if (filename.endsWith(".doc")) { + // 浣跨敤 Aspose.Words 杩涜鏂囨。杞崲 + Document doc = new Document(in); + ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); + doc.save(outputStream, SaveFormat.DOCX); + + documentBytes = outputStream.toByteArray(); + headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); + headers.setContentDispositionFormData("attachment", filename.replace(".doc", ".docx")); + + } else if (filename.endsWith(".docx") || filename.endsWith(".xlsx")) { documentBytes = FileCopyUtils.copyToByteArray(in); headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); headers.setContentDispositionFormData("attachment", filename); -- Gitblit v1.9.1