码迷,mamicode.com
首页 > 编程语言 > 详细

java读XML文件

时间:2015-08-08 01:18:43      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:

  1. XML文件设计为传输和存储数据,其焦点为数据内容。
  2. HTML设计为用来显示数据, 其焦点为数据外观。
  3. XML仅仅是文本文件,任何文本编辑器一般情况下都能对其进行编辑。
  4. XML没有预定义的标签,并且设定的标签是大小写敏感的。

标签还必须:

    • 必须有根元素
    • 属性值需要加引号
    • 空格等会被保留
    • 必须关闭标签

JAVA读取XML文件

1,language.xml文件内容为:

<?xml version="1.0" encoding = "UTF-8" ?>
<language cat = "it">
    <lan id = "1">
        <name>java</name>
        <IDE>Eclipse</IDE>
    </lan>
    <lan id = "2">
        <name>Objective-C</name>
        <IDE>Xcode</IDE>
    </lan>
    <lan id = "3">
        <name>C#</name>
        <IDE>Visual Studio</IDE>
    </lan>
</language>

2,java代码

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

public class XmlRead {
public static void main(String[] args) throws SAXException, IOException {
	try {
		DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
		DocumentBuilder builder = factory.newDocumentBuilder();
		Document document = builder.parse(new File("language.xml"));
		Element root =document.getDocumentElement();
		System.out.println("<language cat = \""+root.getAttribute("cat")+"\">");
		NodeList list = root.getElementsByTagName("lan");
		for(int i=0;i<list.getLength();i++){
			Element lan = (Element) list.item(i);
			System.out.println("\t<lan id = \""+lan.getAttribute("id")+"\">");
			NodeList clist = lan.getChildNodes();
			for (int j = 0; j < clist.getLength(); j++) {
				Node c = clist.item(j);
				if (c instanceof Element) {
					System.out.println("\t\t<"+c.getNodeName()+">"+c.getTextContent()+"</"+c.getNodeName()+">");
				}
			}
			System.out.println("\t</lan>");
		}
		System.out.println("</language>");
	} catch (ParserConfigurationException e) {

	}
}
}

  

  运行结果:

技术分享

  

java读XML文件

标签:

原文地址:http://www.cnblogs.com/starainDou/p/4712318.html

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