dom4j创建XML:
//用dom4j生成xml文件
Document document = DocumentHelper.createDocument();
Element newspaperElement = document.addElement("NewspaperSync.REQ");
newspaperElement.addComment("this is a newspaper xml");
newspaperElement.addProcessingInstruction("MsgHeader", "text");
Element msgHeaderElement = newspaperElement.addElement("MsgHeader");
Element transactionIDElement = msgHeaderElement.addElement("TransactionID");
for(int i=1;i<5;i++){
Element id = transactionIDElement.addElement("ID");
id.setText("i"+i);
}
Element timestampElement = msgHeaderElement.addElement("Timestamp");
Element viasElement = msgHeaderElement.addElement("Vias");
Element viaElement = viasElement.addElement("Via");
viaElement.setText("100.2000.12345");
Element viabakElement = viasElement.addElement("Via");
viabakElement.setText("200.3000.56789");
try{
OutputFormat format = OutputFormat.createPrettyPrint();
XMLWriter output = new XMLWriter(new FileWriter(new File(sendESGxml+"1111.xml")), format); //sendESGxml是路径
output.write(document);
output.close();
}catch(IOException e){
System.out.println(e.getMessage());
}
dom4j解析XML,并修改其中内容:
SAXReader saxReader = new SAXReader();
Document document = saxReader.read(new File("f:/xml/1111.xml"));
List list = document.selectNodes("//MsgHeader/TransactionID");
Iterator iterator = list.iterator();
while(iterator.hasNext()){
Element element = (Element) iterator.next();
Iterator iter = element.elementIterator("ID");
while(iter.hasNext()){
Element idElement = (Element)iter.next();
if(idElement.getText().equals("i2")){
idElement.setText("island");
}
}
}
XMLWriter output = new XMLWriter(new FileWriter(new File("c:/22.xml")));
output.write(document);
output.close();
}
其中用到了2个包:分别是dom4j-1.6.1.jar和jaxen.jar
注:在创建xml时只需要dom4j包就可以了,而在解析修改xml的时候必须有jaxen包才行,否则会报错。
错误描述:Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/JaxenException
at org.dom4j.DocumentFactory.createXPath(DocumentFactory.java:230)
at org.dom4j.tree.AbstractNode.createXPath(AbstractNode.java:207)
at org.dom4j.tree.AbstractNode.selectNodes(AbstractNode.java:164)
at com.elecpaper.buss.action.dom4jUpdate.main(dom4jUpdate.java:24)
分享到:
相关推荐
dom4j解析XML必备jardom4j解析XML必备jardom4j解析XML必备jardom4j解析XML必备jar
dom4j.jar的jar包,java解析xml文件的jar包,无脑好用~
dom4j是一个简单的开源库,用于处理XML、 XPath和XSLT,它基于Java平台,使用Java的集合框架,全面集成了DOM,SAX和JAXP。
用于解析xml文件的dom4j,用于解析xml文件的dom4j,用于解析xml文件的dom4j
XML_dom4j_解析器 jar包 dom4j-1.6.1.jar ,解析XML文件包
dom4j解析XML所需要的.jar包,包括dom4j-1.6.1及jaxen-1.1-beta-7.jar
内附dom4j-1.6.1.rar(内有dom4j-1.6.1.jar包和附加包),解析xml详解文档,解析xml的java源码。
dom4j解析XML(带jar包了). dom4j解析XML(带jar包了). dom4j解析XML(带jar包了).
DOM4J jar包 和教程 比较全面。
java解析XML dom4j dom4j-1.6.1.jar dom4j.jarjava解析XML dom4j dom4j-1.6.1.jar dom4j.jar
dom4j解析XML的两个JAR包,分别是dom4j-1.6.1.jar、jaxen-1.1.1.jar
DOM4J jar包 所有的包 xml解析 dom4j-1.6.1 dom4j-2.0.2 dom4j-2.1.1 导入直接使用
dom4j和xpath的jar包,解析xml的最佳拍档.
这是java解析xml所必须的jar包,包括dom.jar dom4j.jar sax.jar jdom.jar jaxen.jar(xpath必须包).
解析XML的dom、sax和dom4j的jar包。解析XML的dom、sax和dom4j的jar包。
JAVA解析XML文件的其中两种方式,利用dom4j.jar及JDOm.jar两种JAR包解析
dom4j解析XML的两个JAR包(dom4j-1.6.1.jar 和 jaxen.jar)
解析xmljar包,dom4j+xpath 的jar包。手册
使用Dom4j解析XML文件的jar包.
dom4j解析xml文件的压缩包,完整版。对jdom进行了封装。包含源码,jar包以及所需的全部内容。