JAVA怎么从XML里取出节点的值?
<?xmlversion="1.0"encoding="UTF-8"?><root><doctadviseno>2013112752200N</doctadviseno>...
<?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> 展开
<root><doctadviseno>2013112752200N</doctadviseno><sampleno>20130814SHK099999</sampleno><imagedata>R0lGODlhsAmzDfcAAP///zMAAGYAAJkAAMwAAP8AAAAzAAAAAGYzAJkzAMwzAP8zAABmADNmAGZmAJlmAMxmAP9mAACZADOZAGaZAJmZAMyZAP+ZAADMADPMAGbMAJnMAMzMAP/MAAD/ADP/AGb/AJn/AMz/AP//AAAAMzMAM2YAM5kAM8wAM/8AMwAzMzMzM2YzM5kzM8wzM/8zMw</imagedata></root> 展开
3个回答
展开全部
可以用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);
}
}
展开全部
javax.xml.parsers.DocumentBuilderFactory;这个包下的DocumentBuilderFactory类带有生成单例的方法。得到DocumentBuilderFactory对象后,调用.newDocumentBuilder();能得到DocumentBuilder对象,这个对象的parse方法就可以读取xml文件了。读取之后返回的是一个Document对象,里面的方法多的很,去看看api就会用了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
建议百度文库,搜索java解析XML文件,总有你想要的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询