使用DOM解析器在JAVA中使用名称空间更新输入XML文件
如何将XML节点从使用DOM解析器在JAVA中使用名称空间更新输入XML文件,java,xml,dom,Java,Xml,Dom,如何将XML节点从更新为 在Java中使用DOM解析器。 我不想使用replaceAll()方法。您可以使用Node.replaceChild(Node,Node)方法执行以下操作: import javax.xml.parsers.*; 导入javax.xml.transform.*; 导入javax.xml.transform.dom.DOMSource; 导入javax.xml.transform.stream.StreamResult; 导入org.w3c.dom.Document
更新为
在Java中使用DOM解析器。
我不想使用
replaceAll()
方法。您可以使用Node.replaceChild(Node,Node)
方法执行以下操作:
import javax.xml.parsers.*;
导入javax.xml.transform.*;
导入javax.xml.transform.dom.DOMSource;
导入javax.xml.transform.stream.StreamResult;
导入org.w3c.dom.Document;
导入org.w3c.dom.Element;
公开课演示{
公共静态void main(字符串[]args)引发异常{
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
DocumentBuilder db=dbf.newDocumentBuilder();
//创建原始文档
Document Document=db.newDocument();
元素根=document.createElements(“urn:FOO”、“ns0:root”);
document.appendChild(根);
元素请求=document.createElements(“urn:FOO”、“ns0:request”);
root.appendChild(请求);
//创建新的请求元素。
Element newRequest=document.createElements(“urn:BAR”、“ns1:Request”);
//替换请求元素
root.replaceChild(newRequest,request);
//输出新文档
TransformerFactory tf=TransformerFactory.newInstance();
变压器t=tf.新变压器();
DOMSource=新的DOMSource(文档);
StreamResult结果=新的StreamResult(System.out);
t、 转化(来源、结果);
}
}