Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Docx4j:获取段落的样式名_Java_Docx_Docx4j - Fatal编程技术网

Java Docx4j:获取段落的样式名

Java Docx4j:获取段落的样式名,java,docx,docx4j,Java,Docx,Docx4j,我想解析一个docx文档。我使用此代码获取段落并显示文本: final String XPATH_TO_SELECT_TEXT_NODES = "//w:p"; final List<Object> jaxbNodes = documentPart.getJAXBNodesViaXPath(XPATH_TO_SELECT_TEXT_NODES, true); for (Object jaxbNode : jaxbNodes){ fina

我想解析一个docx文档。我使用此代码获取段落并显示文本:

   final String XPATH_TO_SELECT_TEXT_NODES = "//w:p";
    final List<Object> jaxbNodes = documentPart.getJAXBNodesViaXPath(XPATH_TO_SELECT_TEXT_NODES, true);

    for (Object jaxbNode : jaxbNodes){
            final String paragraphString = jaxbNode.toString();
            System.out.println("[Start]: " + paragraphString);
    }       
最终字符串XPATH\u TO\u SELECT\u TEXT\u NODES=“//w:p”;
最终列表jaxbNodes=documentPart.getjaxbnodesviapath(XPATH\u TO\u SELECT\u TEXT\u节点,true);
for(对象jaxbNode:jaxbNodes){
最后一个字符串paragraphString=jaxbNode.toString();
System.out.println(“[Start]:”+段落字符串);
}       
但我还需要知道当前段落的样式名。我该怎么做

谢谢你的帮助。 1人


如果没有明确的样式,则使用默认段落样式(在样式部分中指定)。

谢谢您的解决方案。它工作得很好。上面的代码与“Ppr-Ppr=((P)jaxbNode).getPPr()之间有区别吗?可能没有。P不应该被包裹在一个带子里;ObjectFactory的createP只创建一个裸P对象。
PPr pPr = ((P) XmlUtils.unwrap(jaxbNode)).getPPr();

if (pPr != null) {
    PPrBase.PStyle pStyle = pPr.getPStyle();

    if (pStyle != null) {
        String style = pStyle.getVal();
    }
}