在调用以下方法的时候,会提示org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream.builder()错误
SlideShow slideShow;
if (fileType.equalsIgnoreCase("ppt")) {
slideShow = new HSLFSlideShow(pptInputStream); // 加载 PPT 格式
} else {
slideShow = new XMLSlideShow(pptInputStream); // 加载 PPTX 格式
}
/**
* 判断excel
* @param is
* @return
* @throws IOException
*/
private static Workbook getWorkbook(InputStream is, String fileType) throws IOException {
Workbook workbook;
fileType = fileType.toLowerCase(); // 将文件类型转换为小写
// 判断文件类型
switch (fileType) {
case "xls":
workbook = new HSSFWorkbook(is); // 处理 .xls 格式 (HSSFWorkbook 用于 97-2003 Excel)
break;
case "xlsx":
workbook = new XSSFWorkbook(is); // 处理 .xlsx 格式 (XSSFWorkbook 用于 Excel 2007+)
break;
default:
throw new IllegalArgumentException("无效的文件类型:" + fileType); // 抛出异常,避免返回 null
}
return workbook;
}
// 使用 XWPFDocument 解析 .docx 文件
XWPFDocument docx = new XWPFDocument(docxInputStream);
<!-- commons -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.11.0</version>
</dependency>
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>2.0.33</version>
<!-- 最新版本 -->
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>5.2.3</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>5.2.3</version>
</dependency>
但在官网的版本提示中
所以需要改为以下版本
<!-- commons -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.13.0</version>
</dependency>
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>2.0.26</version>
<!-- 最新版本 -->
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>5.2.4</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>5.2.4</version>
</dependency>
1968

被折叠的 条评论
为什么被折叠?



