字符串与xml格式之间的转换

  1. 字符串和xml格式互相转换(以字符串转换的方式创建):

 
 
  1. public static void main(String[] args){
  2. String str = "";
  3. str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
  4. + "<return>"
  5. + "<main>"
  6. + "<transNo>1</transNo>"
  7. + "<transNo>2</transNo>"
  8. + "<transNo>3</transNo>"
  9. + "<transNo><resultCode>0</resultCode></transNo>"
  10. + "</main>"
  11. + "</return>";
  12. try {
  13. //把字符串格式转换为xml格式
  14. Document document = DocumentHelper.parseText(str);
  15. //获取根节点对象也就是<return>
  16. Element element0 = document.getRootElement();
  17. //打印节点名和节点内容
  18. System.out.println("name1:"+element0.getName()+". text1:"+element0.getTextTrim());
  19. //根据上级节点对象获取子节点对象
  20. Element element1 = element0.element("main");
  21. Element element2 = element1.element("transNo");
  22. //打印节点名和节点内容有相同的节点名称时默认打印第一个的节点信息
  23. System.out.println("name2:"+element2.getName()+". text2:"+element2.getText());
  24. //可以使用下标的方式来定位获取指定节点的内容
  25. System.out.println(element1.node(0).getText());
  26. System.out.println(element1.node(1).getText());
  27. System.out.println(element1.node(2).getText());
  28. //获取所有相同标签的子节点返回一个list集合
  29. System.out.println(element1.selectNodes("transNo"));
  30. //把dom元素转换为字符串类型
  31. System.out.println(document.asXML());
  32. } catch (DocumentException e) {
  33. e.printStackTrace();
  34. }
  35. }
  1. 创建一个xml格式dom对象(增加节点的方式创建):

 
 
  1. public static void main(String[]args){
  2. //穿件一个dom对象
  3. Document doc = DocumentHelper.createDocument();
  4. //设置这个dom的编码格式
  5. doc.setXMLEncoding("UTF-8");
  6. //增加一个根节点元素(一级节点)
  7. Element payMentInfo = doc.addElement("paymentinfo");
  8. //在根节点元素下再增加一个元素(二级节点)
  9. Element recordInfo = payMentInfo.addElement("recordinfo");
  10. //在二级节点元素下再增加一个元素(三级节点)
  11. Element code = recordInfo.addElement("code");
  12. //设置指定元素的值
  13. code.setText("0");
  14. //在制定元素下在增加一个子元素(三级)
  15. Element dataSource = recordInfo.addElement("datasource");
  16. //设置值
  17. dataSource.setText("4");
  18. Element inputDate = recordInfo.addElement("inputdate");
  19. SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
  20. inputDate.setText(format.format(new Date()));
  21. Element batchNo = recordInfo.addElement("batchno");
  22. batchNo.setText("1");
  23. Element free3 = recordInfo.addElement("free3");
  24. free3.setText("2");
  25. //把xml格式的dom格式化为字符串并打印出来
  26. System.out.println(doc.asXML());
  27. }

猜你喜欢

转载自blog.csdn.net/weixin_39513166/article/details/78695213