Java 如何使用ApachePOI删除docx中包含特定字符串的特定段落

Java 如何使用ApachePOI删除docx中包含特定字符串的特定段落,java,apache-poi,Java,Apache Poi,我试图使用ApachePOI删除包含特定字符串的文档的特定段落。我在第二个答案中找到了一段代码: 但是equalsIgnoreCase()抛出了一个错误,我不明白: 线程“main”java.lang.RuntimeException中的异常:不可编译 源代码-错误的符号类型: com.sun.xml.internal.ws.util.StringUtils.equalsIgnoreCase 如何解决这个问题?提前感谢我不知道为什么需要com.sun.*.StringUtils。然而,尝试使用

我试图使用ApachePOI删除包含特定字符串的文档的特定段落。我在第二个答案中找到了一段代码:

但是equalsIgnoreCase()抛出了一个错误,我不明白:

线程“main”java.lang.RuntimeException中的异常:不可编译 源代码-错误的符号类型: com.sun.xml.internal.ws.util.StringUtils.equalsIgnoreCase


如何解决这个问题?提前感谢

我不知道为什么需要com.sun.*.StringUtils。然而,尝试使用字符串类中的经典方法。这很有效!我使用了equalsIgnoreCase()而不是StringUtils.equalsIgnoreCase()。谢谢
FileInputStream fis = new FileInputStream(fileName);
XWPFDocument doc = new XWPFDocument(fis);
fis.close();
// Find a paragraph with todelete text inside
XWPFParagraph toDelete = doc.getParagraphs().stream().filter(p -> StringUtils.equalsIgnoreCase("todelete", p.getParagraphText()))
        .findFirst().orElse(null);
if (toDelete != null) 
  {
    doc.removeBodyElement(doc.getPosOfParagraph(toDelete));
    OutputStream fos = new FileOutputStream(fileName);
    doc.write(fos);
    fos.close();
 }