提问者:小点点

在ApachePOI中,是否有一种方法可以通过id他们的id来访问XWPF元素?


我有word文档(它是基于docx和xml的),我想找到一个表并以编程方式填充它。我正在使用ApachePOI,XWPFAPI。

有没有办法通过其id访问XWPF元素?

如何在XWPF元素之间创建唯一性,然后使用java进行更改?

谢啦


共1个答案

匿名用户

我实现的是一个查找替换功能(从这里开始);

在我的模板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);
                }
            }
        }
    }
}