JAVA怎么从XML里取出节点的值?

<?xml version="1.0" encoding="UTF-8"?>
<root><doctadviseno>2013112752200N</doctadviseno><sampleno>20130814SHK099999</sampleno><imagedata>R0lGODlhsAmzDfcAAP///zMAAGYAAJkAAMwAAP8AAAAzAAAAAGYzAJkzAMwzAP8zAABmADNmAGZmAJlmAMxmAP9mAACZADOZAGaZAJmZAMyZAP+ZAADMADPMAGbMAJnMAMzMAP/MAAD/ADP/AGb/AJn/AMz/AP//AAAAMzMAM2YAM5kAM8wAM/8AMwAzMzMzM2YzM5kzM8wzM/8zMw</imagedata></root>

可以用dom4j. 参考如下代码(记得引入dom4j-1.6.1.jar和jaxen-1.1.4.jar):

<?xml version="1.0" encoding="ISO-8859-1" ?>

<CATALOG>
<allSong>
<Name>girl</Name>
<Time>2012.12.21</Time>
</allSong>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob adDylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Coludafadmbia</COMPANY>
<PRICE>10.90</PRICE>
<YEAR>1985</YEAR>
</CD>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<YEAR>1985</YEAR>
</CD>
</CATALOG>



import java.io.File;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

public class Test {

/**
 * @param args
 * @throws Exception
 */
@SuppressWarnings({ "rawtypes", "unchecked" })
public static void main(String[] args) throws Exception {
SAXReader saxReader = new SAXReader();
File inputFile = new File("src/this.xml");
Document document = saxReader.read(inputFile);
Element root = document.getRootElement();

Element e = (Element) root.selectSingleNode("/CATALOG/allSong/Name");

// allSong节点下的Name节点的value
String name = e.getText();
System.out.println(name);

List cdList = root.selectNodes("/CATALOG/CD/ARTIST");
Element[] cdArray = new Element[cdList.size()];
cdList.toArray(cdArray);

// 第二个CD节点下的ARTIST节点的value
String ARTIST2 = cdArray[1].getText();
System.out.println(ARTIST2);
}

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-15
javax.xml.parsers.DocumentBuilderFactory;这个包下的DocumentBuilderFactory类带有生成单例的方法。得到DocumentBuilderFactory对象后,调用.newDocumentBuilder();能得到DocumentBuilder对象,这个对象的parse方法就可以读取xml文件了。读取之后返回的是一个Document对象,里面的方法多的很,去看看api就会用了。
第2个回答  2013-08-15
建议百度文库,搜索java解析XML文件,总有你想要的。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网