解析XML文件——DOM基本操作
来源:互联网 发布:淘宝手机贷款 编辑:程序博客网 时间:2024/06/05 18:51
1.DOM的常用方法
1)Document接口常用方法
2)Node接口常用方法
3)NodeList接口常用方法
4)StreamResult类的构造方法
2.DOM解析XML文件
//DOM解析XML文件示例//假设已导入所需的包public class Main { public static void main(String args[]) { //建立DocumentBuilderFactory,用于取得DocumentBuilder DocumentBuilderFactory fac = DocumentBuilderFactory.newInstance(); DocumentBuilder bui = null; try { //通过DocumentBuilderFactory,取得DocumentBuilder bui = fac.newDocumentBuilder(); } catch (ParserConfigurationException e) { e.printStackTrace(); } Document doc = null; try { //读取指定路径的xml文件 doc = bui.parse("C:" + File.separator + "DomDemo1.xml"); } catch (SAXException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } //查找'link'节点 NodeList nl = doc.getElementsByTagName("link"); //输出nl中,第一个子节点中的文本节点内容 for (int x = 0; x < nl.getLength(); x++) { Element e = (Element) nl.item(x); /* item(0).getFirstChile()为取得第一个子节点的第一个文本节点 但是若是'link'中有多个节点,就可以改变index, 如:改为item(1)就会输出第二个name的value */ System.out.print("name:" + e.getElementsByTagName("name").item (0).getFirstChild().getNodeValue()); System.out.println(" age:" + e.getElementsByTagName("age").item (0).getFirstChild().getNodeValue()); } }}
3.DOM生成XML文件
//DOM生成XML文件示例//假设已导入所需的包public class Main { public static void main(String args[]) { //建立DocumentBuilderFactory,以取得DocumentBuilder DocumentBuilderFactory fac = DocumentBuilderFactory.newInstance(); DocumentBuilder bul = null; try { //通过DocumentBuilderFactory,取得DocumentBuilder bul = fac.newDocumentBuilder(); } catch (ParserConfigurationException e) { e.printStackTrace(); } //定义Document接口对象,通过DocumentBuilder类进行DOM树的转换操作 Document doc = null; //创建一个新文档 doc = bul.newDocument(); //建立各个操作节点 Element stulist = doc.createElement("stulist"); Element link1 = doc.createElement("link"); Element link2 = doc.createElement("link"); Element name1 = doc.createElement("name"); Element age1 = doc.createElement("age"); Element name2 = doc.createElement("name"); Element age2 = doc.createElement("age"); //设置文本内容 name1.appendChild(doc.createTextNode("aa")); age1.appendChild(doc.createTextNode("17")); name2.appendChild(doc.createTextNode("bb")); age2.appendChild(doc.createTextNode("18")); //设置节点关系 link1.appendChild(name1); //子节点 link1.appendChild(age1); link2.appendChild(name2); link2.appendChild(age2); stulist.appendChild(link1); stulist.appendChild(link2); doc.appendChild(stulist); //文档上保存节点 //输出文档到文件中 TransformerFactory tf = TransformerFactory.newInstance(); Transformer t = null; try { t = tf.newTransformer(); } catch (TransformerConfigurationException e) { e.printStackTrace(); } //设置字符编码 t.setOutputProperty(OutputKeys.ENCODING,"utf-8"); //输出文档 DOMSource sou = new DOMSource(doc); //指定输出位置 StreamResult res = new StreamResult(new File("C:" + File.separator + "DomDemo2.xml")); try { //输出 t.transform(sou,res); } catch (TransformerException e) { e.printStackTrace(); } }}
阅读全文
0 0
- 解析XML文件——DOM基本操作
- dom解析XML文件操作
- 解析XML文件——JDOM基本操作
- 解析XML文件——DOM4J基本操作
- 解析XML文件——SAX基本操作
- Java——DOM解析XML文件
- XML文件读取之 DOM解析操作
- XML文件写入之DOM解析操作
- 使用DOM操作XML文件之DOM下基本API
- DOM XML解析操作
- Java解析XML文件——DOM解析
- DOM解析XML文件
- xml文件解析-DOM
- dom解析xml文件
- DOM解析XML文件
- dom解析xml文件
- Dom解析XML文件
- DOM解析XML文件
- Hibernate数据库框架的入门
- Nginx的初步探索
- 命令模式
- 字符设备驱动模块
- Mac OS系统通过ssh远程连接服务器或VPS,类似window上的putty
- 解析XML文件——DOM基本操作
- Mac OS下安装串口调试工具minicom
- Mac OS系统安装Mysql
- Mac OS系统APP软件推荐
- Windows下Qt 5.2 for Android开发入门
- 神奇6位数_2014决赛第二题
- 通过shell脚本实现从文件中读取数据的几种方法
- Centos7 RPM 安装 mysql5.7
- 乐驾 -- 3