我有word文档(基于docx和xml),我想找到一个表并以编程方式填充它。我正在使用Apache POI,XWPF API。
有没有办法通过ID访问XWPF元素?
如何在XWPF元素之间创建唯一性,然后使用java进行更改?
由于
答案 0 :(得分:1)
我实施的是查找替换功能(from here);
在我的模板docx文件中,我正在使用" id喜欢文本",__ heading1 _,_ _ subjectname__,然后使用下面的代码替换它们。对于表@ axel-richters解决方案可能是合适的。
private void findReplace(String a, String b, CustomXWPFDocument document){
for (XWPFParagraph p : document.getParagraphs()) {
List<XWPFRun> runs = p.getRuns();
if (runs != null) {
for (XWPFRun r : runs) {
String text = r.getText(0);
if (text != null && text.contains(a)) {
text = text.replace(a, b);
r.setText(text, 0);
}
}
}
}
}