XML解析

Posted 北极丶光

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XML解析相关的知识,希望对你有一定的参考价值。

package com.hxgd.ms.readfile;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
//生成xml格式的字符串
public class CreateXml {
    /* 依赖  dom4j
  
<dependency>
      <groupId>dom4j</groupId>
      <artifactId>dom4j</artifactId>
      <version>1.6.1</version>
  </dependency>
*/
public static void main(String[] args) {
        //生成xml格式的字符串

    <?xml version="1.0" encoding="UTF-8"?>
    <User><name>张三</name><age>18</age><gender sex="男">男</gender></User>

      Document document2 = DocumentHelper.createDocument();

        Element ele = document2.addElement("User");
        Element elename = ele.addElement("name");
        elename.setText("张三");
        Element eleage = ele.addElement("age");
        eleage.setText("18");
        Element elegender = ele.addElement("gender");    
        elegender.setAttributeValue("sex", "男");
        elegender.setText("男");
        String asXML2 = document2.asXML();
        System.err.println(asXML2);       
    }
}

//解析xml文件或者解析xml格式的字符蠢
public
static void readXml() { //引入jar包 //创建解析器 //创建SAXReader对象读取.xml文件 SAXReader sax=new SAXReader(); //获取dom树 Document document = null; try { //读取XML文件 document = sax.read(new File("product.xml")); } catch (DocumentException e) { e.printStackTrace(); } /*解析 xml字符串 * String xml ="xml字符串"; try { Document document2 = sax.read(new ByteArrayInputStream(xml.getBytes("UTF-8"))); } catch (UnsupportedEncodingException e) { e.printStackTrace(); }*/ //获取根元素 Element rootElement = document.getRootElement(); //获取所有子元素 Iterator<Element> iterator = rootElement.elementIterator(); while(iterator.hasNext()){ //拿到属性方法一 Element element = iterator.next(); // Attribute attribute = element.attribute("ID"); // String value = attribute.getText(); // System.err.println(attribute.getName()+"--->"+value); //拿到属性方法二 List<Attribute> list = element.attributes(); for(Attribute a:list){ System.out.println(a.getName()+"-----"+a.getText()); } Iterator<Element> iterator2 = element.elementIterator(); while(iterator2.hasNext()){ Element next = iterator2.next(); System.out.println(next.getName()+"-->"+next.getText()); } System.out.println(); }
}

 

 

 

以上是关于XML解析的主要内容,如果未能解决你的问题,请参考以下文章

无法解析片段中的 findViewById [重复]

jsoup解析xml某片段的问题

为 Blogger 上的博客格式化代码片段 [关闭]

java解析xml的几种方式哪种最好?

使用非utf-8编码在Python中解析XML

在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途