我想解析我的xml文件(BPMN 2.0)以通过JDOM读取<text>标记的内容。我的意思是阅读“ Test of myAnnotation”

  <textAnnotation id="myAnnotation_ID" signavio:alignment="left" textFormat="text/plain">
     <text>Test of myAnnotation</text>
  </textAnnotation>


这是我的代码:

Document doc = new SAXBuilder().build(myfile);
BPMN2NS = Namespace.getNamespace("http://www.omg.org/spec/BPMN/20100524/MODEL");
Element procElem = doc.getRootElement().getChild("process", BPMN2NS);
List<Element> textAnnotation = procElem.getChildren("textAnnotation", BPMN2NS);


但是我已经可以读取的是[Element: <text [Namespace: http://www.omg.org/spec/BPMN/20100524/MODEL]/>],作为“ textAnnotation”元素的“ content”。

知道如何阅读“ Test of myAnnotation”吗?

最佳答案

我猜想,一旦获得了textAnnotation元素,就只需使用以下代码获取所有名为“ text”的子代并在内部获取文本。

    Document doc = new SAXBuilder().build(myfile);

    Namespace BPMN2NS = Namespace.getNamespace("http://www.omg.org/spec/BPMN/20100524/MODEL");
    Element procElem = doc.getRootElement().getChild("process", BPMN2NS);
    List<Element> textAnnotations = procElem.getChildren("textAnnotation", BPMN2NS);
    List<Element> texts = textAnnotations.get(0).getChildren("text", BPMN2NS);
    System.out.print(texts.get(0).getText());

关于java - 如何通过JDOM解析xml文件以查找主要属性的内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50605187/

10-10 02:21