码迷,mamicode.com
首页 > 其他好文 > 详细

DOM4J操作XML

时间:2018-03-28 16:49:37      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:username   XML   文本   vertx   rip   nts   nbsp   new   sax   

创建XML


 1 /**   
 2     * @Description: 创建XML文件
 3     * @author 112  
 4     * @date 2018年3月28日 下午2:13:36 
 5     */
 6     @Test
 7     public void createXML(){
 8         //创建XML元素
 9         Document document = DocumentHelper.createDocument();
10         Element rootElement = document.addElement("XML创建_根节点");
11         rootElement.addElement("XML创建_子节点一").addText("子节点一_文本");
12         rootElement.addElement("XML创建_子节点二").addAttribute("子节点二_属性", "我是属性二");
13         rootElement.addElement("XML创建_子节点三").addAttribute("子节点三_属性", "我是属性三").addText("子节点三_文本");
14         
15         try {
16             //创建输出流
17             OutputStream outputStream = new FileOutputStream("src/cn/rocker/xml/write.xml");
18             //格式化输出的XML格式
19             OutputFormat format = OutputFormat.createPrettyPrint();
20             XMLWriter writer = new XMLWriter(outputStream, format);
21             writer.write(document);
22             writer.close();
23             outputStream.close();
24         } catch (Exception e) {
25             e.printStackTrace();
26         }
27     }
1 <?xml version="1.0" encoding="UTF-8"?>
2 
3 <XML创建_根节点>
4   <XML创建_子节点一>子节点一_文本</XML创建_子节点一>
5   <XML创建_子节点二 子节点二_属性="我是属性二"/>
6   <XML创建_子节点三 子节点三_属性="我是属性三">子节点三_文本</XML创建_子节点三>
7 </XML创建_根节点>

 

 

 解析XML


 1 /**   
 2     * @Description: 解析XML文件
 3     * @author czc   
 4     * @date 2018年3月28日 下午3:52:29 
 5     */
 6     @Test
 7     public void parseXML(){
 8         SAXReader reader = new SAXReader();
 9         try {
10             Document document = reader.read("src/cn/rocker/xml/parse.xml");
11             Element rootElement = document.getRootElement();
12             List<Element> elements = rootElement.elements();
13             
14             Element element1 = elements.get(2);
15             System.out.println(element1.attributeValue("name"));
16             
17             System.out.println(rootElement.attributeValue("id"));
18         } catch (Exception e) {
19             e.printStackTrace();
20         }
21     }
1 <?xml version="1.0" encoding="UTF-8"?>
2 <bean id="masterDataSource" parent="parentDataSource">
3         <property name="driverClass" value="com.mysql.jdbc.Driver" />
4         <property name="jdbcUrl" value="jdbc:mysql://192.168.166.154:3306/iisp_prod_zj" />
5         <property name="username" value="root" />
6         <property name="password" value="root" />
7 </bean>

 

 

XML和String互相转换


 1 /**   
 2     * @Description: XML和String相互转换
 3     * @author czc   
 4     * @date 2018年3月28日 下午4:10:47 
 5     */
 6     @Test
 7     public void convertXML2String(){
 8         SAXReader reader = new SAXReader();
 9         try {
10             Document document = reader.read("src/cn/rocker/xml/parse.xml");
11             
12             //将Document对象转为String
13             String strXML = document.asXML();
14             System.out.println(strXML);
15         } catch (DocumentException e) {
16             e.printStackTrace();
17         }
18     }
 1 /**   
 2     * @Description: XML和String相互转换
 3     * @author czc   
 4     * @date 2018年3月28日 下午4:26:05 
 5     */
 6     @Test
 7     public void convertString2XML(){
 8         StringBuilder sb = new StringBuilder();
 9         sb.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
10         sb.append("<bean id=\"masterDataSource\" parent=\"parentDataSource\">");
11         sb.append("<property name=\"driverClass\" value=\"com.mysql.jdbc.Driver\"/>");
12         sb.append("<property name=\"jdbcUrl\" value=\"jdbc:mysql://192.168.166.154:3306/iisp_prod_zj\"/>");
13         sb.append("<property name=\"username\" value=\"root\"/>");
14         sb.append("<property name=\"password\" value=\"root\"/>");
15         sb.append("</bean>");
16         String text = sb.toString();
17         
18         //将String转为Document
19         try {
20             Document document = DocumentHelper.parseText(text);
21             System.out.println(document.getRootElement().getName());
22         } catch (DocumentException e) {
23             e.printStackTrace();
24         }
25     }

 

DOM4J操作XML

标签:username   XML   文本   vertx   rip   nts   nbsp   new   sax   

原文地址:https://www.cnblogs.com/rocker-pg/p/8664289.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!