Как скопировать все содержимое файла docx в новый? - PullRequest
0 голосов
/ 17 июня 2020

Я работаю над проектом весенней загрузки с использованием тимелеафа. Мне нужно создать файл Word (.docx) на основе существующего (в качестве шаблона), который содержит стили, таблицы, изображения ..., а также мне нужно для изменения и настройки нескольких строк одновременно. Я проверил несколько кодов и ответов о библиотеке Apache POI, но в моем случае ничего не работает.

Любые идеи ПОЖАЛУЙСТА! С уважением и уважением


Я решил свою проблему с помощью этого кода:

public void wordFileCreator() throws IOException
    {
            String filename = "Template.docx";
            try {

                XWPFDocument doc = new XWPFDocument(OPCPackage.open(new FileInputStream(filename)));
                List<XWPFParagraph> paragraphList = doc.getParagraphs();
                for (XWPFParagraph para : paragraphList) {
                    for (XWPFRun run : para.getRuns()) {
                        String text = run.text();
                        if(text.contains("StringToReplace")){
                            text = text.replace("StringToReplace", "newVal");
                            run.setText(text, 0);
                        }
                    }
                }
                doc.write(new FileOutputStream("newFile.docx"));
            } catch (Exception e) {
                e.printStackTrace();
            }
    }
...