2017-04-27 97 views
0

我有串状<msup><mn>2</mn><mn>6</mn></msup><mo>+</mo><msup><mn>2</mn><mn>7</mn></msup>作为节点添加XML字符串现有的XML

一个XML/MATHML片段我想替换这个字符串现有的XML节点。我试图

DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); 
    DocumentBuilder docBuild = docFactory.newDocumentBuilder(); 
    Document doc = docBuild.parse(is); //is ==> Inputstream 
    XPath xpath = XPathFactory.newInstance().newXPath(); 
    xpath.setNamespaceContext(new Namespace()); 
    XPathExpression expr = xpath.compile(xPath); //xPath ==>XPath of parent node where the above is to be appended 
    Node node = (Node) expr.evaluate(doc, XPathConstants.NODE); 
    if (node.getChildNodes().item(0).getNodeName().equals("mml:math")) { 
     node.removeChild((node.getChildNodes().item(0))); 
     Element s= doc.createElement("mml:math"); 
     s.setNodeValue("<msup><mn>2</mn><mn>6</mn></msup><mo>+</mo><msup><mn>2</mn><mn>7</mn></msup>"); 
     node.appendChild(s); 
    } 
+0

那么你试过的代码发生了什么? –

+0

XML没有得到更新.... –

+0

如果你提供源XML,这将是很容易回答你的问题 – ssanrao

回答

0

而不是使用s.setNodeValue()的,我用s.setTextContent()这固定我的问题。