您的位置:首页 > 其它

DOM方式读写XML文件

2008-04-17 01:16 399 查看
这里所说的XML指的是那种标准的XML文件,而不是配置文件。
一个标准的XML文件如下所示:
<? xml version = "1.0" encoding = "UTF-8" ?>
< users >
< user id = "1" >
< name > 罗维 </ name >
< age > 24 </ age >
< sex > 男 </ sex >
</ user >
< user id = "2" >
< name > 张娜拉 </ name >
< age > 27 </ age >
< sex > 女 </ sex >
</ user >
< user id = "3" >
< name > 微微 </ name >
< age > 32 </ age >
< sex > 女 </ sex >
</ user >
</ users >
在这个文件中包括版本号,编码。

一. JAVA使用DOM方式读取XML文件中的数据。
在这个方式中试用W3C提供的DOM方式来读取。就是使用Document类的方法。想要获得一个Document的实例需要获得以下几步:
1. DocumentBuilderFactory dbf = DocumentBuilderFactory. newInstance (); //获得对象工厂
2. DocumentBuilder db = dbf.newDocumentBuilder(); //获得制造器
3. Document doc = db.parse(file); //通过制造器来获得 Document的实例。需要注意的是 parse 方法的参数是文件对象。
这几个步骤可能会抛出异常需要我们捕获或者抛出异常。
获得 Document 对象后我们就可以运用这个类里的方法进行对XML文件的读操作,具体的步骤如下:
NodeList nodeList = (NodeList) doc .getElementsByTagName( "user" );

for ( int i=0;i<nodeList.getLength();i++){
Element element = (Element)nodeList.item(i);
String id = element.getAttribute( "id" );
String name = doc .getElementsByTagName( "name" ).item(i).getFirstChild().getNodeValue();

String age = doc .getElementsByTagName( "age" ).item(i).getFirstChild().getNodeValue();

String sex = doc .getElementsByTagName( "sex" ).item(i).getFirstChild().getNodeValue();

}
需要注意的是 doc .getElementsByTagName( "user" ); 获得的是一个Nodelist这个是W3C提供的一个包中定义的。所以在引用的时候最好不要引用错误。
至于说写操作,直接使用FileWriter 的writer方法就可以了。
FileWriter fw = new FileWriter("文件名");
Fw.write("");
二. 读写普通配置文件

三. 读写制定的节点(只读一个特定的节点,只写一个特定的节点)

JAVA读写XML文件在编程中的应用
一. 读出来之后使用反射机制
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: