diff --git a/src/main/java/com/easydatabaseexport/ui/ConnectJavaFrame.java b/src/main/java/com/easydatabaseexport/ui/ConnectJavaFrame.java index 0b8ef48d48490e800f258373b8fc212bb8eb5771..c3a03c7f5c5de7ca7ad0500fc99536a677fc461b 100644 --- a/src/main/java/com/easydatabaseexport/ui/ConnectJavaFrame.java +++ b/src/main/java/com/easydatabaseexport/ui/ConnectJavaFrame.java @@ -24,6 +24,7 @@ import com.easydatabaseexport.util.SwingUtils; import com.easydatabaseexport.util.WordReporter; import lombok.SneakyThrows; import lombok.extern.java.Log; +import org.apache.poi.xwpf.usermodel.XWPFDocument; import javax.swing.JFileChooser; import javax.swing.JFrame; @@ -353,9 +354,9 @@ public class ConnectJavaFrame { wordReporter.setTempLocalPath(filePath); wordReporter.init(); wordReporter.exportWORD(listMap, indexMap, 0); - wordReporter.generate(file.getAbsolutePath()); + XWPFDocument document = wordReporter.generate(file.getAbsolutePath()); //添加目录 - AddToTopic.generateTOC(file.getAbsolutePath(), file.getAbsolutePath()); + AddToTopic.generateTOC(document, file.getAbsolutePath()); int k = JOptionPane.showConfirmDialog(null, "导出成功!\n文件已保存到:" + file.getAbsolutePath() + "\n是否立即打开查看文件?", "成功", JOptionPane.YES_NO_OPTION); if (k == 0) { diff --git a/src/main/java/com/easydatabaseexport/util/AddToTopic.java b/src/main/java/com/easydatabaseexport/util/AddToTopic.java index fffb48bc9e9779381443c6a0a16357598e9221b7..f8af397b305286aec63771537486cfc6aa7c308a 100644 --- a/src/main/java/com/easydatabaseexport/util/AddToTopic.java +++ b/src/main/java/com/easydatabaseexport/util/AddToTopic.java @@ -26,12 +26,9 @@ public class AddToTopic { generateTOC("C:\\Users\\admin\\Desktop\\1.doc","C:\\Users\\admin\\Desktop\\2.doc"); }*/ - public static void generateTOC(String sourcePath, String targetPath) throws IOException { - FileInputStream fileInputStream = null; + public static void generateTOC(XWPFDocument document, String targetPath) throws IOException { OutputStream out = null; try { - fileInputStream = new FileInputStream(sourcePath); - XWPFDocument document = new XWPFDocument(fileInputStream); String findText = "目录哈哈"; String replaceText = ""; for (XWPFParagraph p : document.getParagraphs()) { @@ -52,9 +49,6 @@ public class AddToTopic { } catch (Exception e) { LogManager.writeLogFile(e, log); } finally { - if (fileInputStream != null) { - fileInputStream.close(); - } if (out != null) { out.close(); } diff --git a/src/main/java/com/easydatabaseexport/util/WordReporter.java b/src/main/java/com/easydatabaseexport/util/WordReporter.java index bdf68a9634330396e9808d6cd2283238482afb5b..8426b778d34b5c776a3ccb39f8b2c137aead989b 100644 --- a/src/main/java/com/easydatabaseexport/util/WordReporter.java +++ b/src/main/java/com/easydatabaseexport/util/WordReporter.java @@ -860,12 +860,12 @@ public class WordReporter { * @return * @throws IOException */ - public boolean generate(String outDocPath) throws IOException { + public XWPFDocument generate(String outDocPath) throws IOException { outputStream = new FileOutputStream(outDocPath); xwpfDocument.write(outputStream); this.close(outputStream); this.close(inputStream); - return true; + return xwpfDocument; } /**