Я использую POI Apache для работы с документами docx с использованием java. Принцип прост:Скопируйте docx в конец другого
- У меня есть базовый шаблон для отображения данных (с текстом, заголовки и таблицы)
- у меня есть данные, которые будут заполнить шаблон
- Мне нужно, чтобы получить окончательный документ, который будет содержит шаблон, повторяющийся для каждой строки данных
Мне удалось загрузить документ-документ, и я также создал конечный объект документа, который ничего не содержит (из пустого документа, содержащего стили, которые я хочу, потерять их). Я могу изменить свои поля данных в шаблоне, просмотрев абзацы и таблицы, но то, что я не могу сделать, это скопировать содержимое, которое было изменено на окончательный документ.
В принципе, это то, что у меня есть:
for (int i=0; i<10; i++) {
finalDoc.removeBodyElement(i);
}
for (int i=0; i<10; i++) {
//EditableDocX is a subclass of XWPFDocument, for purpose of my project
EditableDocX document = new EditableDocX("template.docx");
replacementMap.put("[field1]", "Content1_"+i);
replacementMap.put("[field2]", "Content2_"+i);
document.replaceWithMap(replacementMap); //I've have this working
finalDoc.addContentOfDoc(document); //I don't have this working :(
}
finalDoc.saveFile("result.docx");
Есть ли способ, чтобы скопировать содержимое document
объекта до конца finalDoc
объекта? (есть абзацы и таблицы со стилями)