Java 阅读时如何格式化NumPr

Java 阅读时如何格式化NumPr,java,docx,docx4j,Java,Docx,Docx4j,当我使用docx4j读取docx文件时 我想得到一个列表的编号,就像: 某物 其他 我可以得到文本“something”,但我不能得到“1.” P=(P)o; PPr-PPr=p.getPPr(); NumPr npr=ppr.getNumPr(); 如果(npr!=null){ //如何解析npr。。。 } List pl=p.getContent(); 对于(对象po:pl){ 处理内容(po); } 任何人都可以告诉我如何解析它?您所要求的是通过docx4j的HTML和PDF输出完成的

当我使用docx4j读取docx文件时

我想得到一个列表的编号,就像:

  • 某物
  • 其他
  • 我可以得到文本“something”,但我不能得到“1.

    P=(P)o;
    PPr-PPr=p.getPPr();
    NumPr npr=ppr.getNumPr();
    如果(npr!=null){
    //如何解析npr。。。
    }
    List pl=p.getContent();
    对于(对象po:pl){
    处理内容(po);
    }
    

    任何人都可以告诉我如何解析它?

    您所要求的是通过docx4j的HTML和PDF输出完成的

    看看org.docx4j.model.listnumbering.Emulator,特别是它的getNumber方法

    模拟器为每个列表维护内部计数器;如果对文档顺序中的每个段落调用它,那么在文档中的任何一点上,计数器都将反映每个列表的当前编号

    P p = (P) o;
    PPr ppr = p.getPPr();
    NumPr npr = ppr.getNumPr();
    if(npr!=null){
        //how to parse npr...
    }
    List<Object> pl = p.getContent();
    for (Object po : pl) {
        dealWithContent(po);
    }