<?xml version="1.0" encoding="gbk"?>			<!--设置编码格式为gbk-->
<!DOCTYPE hostList[
<!ELEMENT hostList (host+)> <!--设置文件的根节点hostList,以及子节点host,+代表可以有多个-->
<!ELEMENT host (id ,title,types,street,floot,price)> <!--设置host节点下的子节点 -->
]>
<hostList><!-- 必须以我们设置的规则来写xml文件不然会立即出错 -->
<host>
<id>1</id>
<title>洛阳出租</title>
<types>两室两厅</types>
<street>洛阳龙鳞路</street>
<floot>120</floot>
<price>2000</price>
</host>
<host>
<id>2</id>
<title>郑州出租</title>
<types>两室一厅</types>
<street>金水区</street>
<floot>100</floot>
<price>3000</price>
</host>
</hostList>

  解析xml文件

package test;

import java.io.IOException;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException; import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException; public class Text {
public static void main(String[] args) { try {
DocumentBuilderFactory builderfactory=DocumentBuilderFactory.newInstance();//创建解析器的工厂
DocumentBuilder builder= builderfactory.newDocumentBuilder();//创建解析器对象
try {
Document document=builder.parse("WebRoot/HostList.xml");//获取到xml文件,并解析xml文件
NodeList nodelist=document.getElementsByTagName("host");//获取到所有的子节点“host”
for (int i = 0; i < nodelist.getLength(); i++) { Node hoselist =nodelist.item(i);//获取单个host节点
NodeList childList=hoselist.getChildNodes();//获取host节点下的所有节点
for (int j = 0; j < childList.getLength(); j++) {//循环读取所有的节点
Node subNode=childList.item(j);//获取host节点下的某个节点
if(subNode.getNodeType()==Node.ELEMENT_NODE)//判断元素是否为节点元素
{
String name=subNode.getNodeName();//获取节点名字
String valu=subNode.getFirstChild().getNodeValue();//获取节点下的value值
System.out.println(name+":"+valu);//输出
}
}
}
System.out.println();
} catch (SAXException e) { e.printStackTrace();
} catch (IOException e) { e.printStackTrace();
}
} catch (ParserConfigurationException e) { e.printStackTrace();
}
}
}

  

XML文件的读取的更多相关文章

  1. spring 框架的xml文件如何读取properties文件数据

    spring 框架的xml文件如何读取properties文件数据 第一步:在spring配置文件中 注意:value可以多配置几个properties文件 <bean id="pro ...

  2. python之xml 文件的读取方法

    ''' xml 文件的读取方法 ''' #!/usr/bin/env python # -*- coding: utf- -*- import xml.etree.ElementTree as ET ...

  3. XML文件的读取----cElementTree

    XML文件如下: <?xml version="1.0" encoding="UTF-8"?> <tokenxml> <token ...

  4. Java文件操作①——XML文件的读取

    一.邂逅XML 文件种类是丰富多彩的,XML作为众多文件类型的一种,经常被用于数据存储和传输.所以XML在现今应用程序中是非常流行的.本文主要讲Java解析和生成XML.用于不同平台.不同设备间的数据 ...

  5. 使用DOM4J解析XMl文件与读取XML文件

    XML文件 <?xml version="1.0" encoding="UTF-8"?> <bookstore> <book id ...

  6. MVVM模式应用 之xml文件的读取

    XML如下所示: <?xml version="1.0" encoding="utf-8" ?> <schools> <schoo ...

  7. C#的XML文件的读取与写入

    在设计程序的时候,对于一些变化性较强的数据,可以保存在XML文件中,以方便用户修改.尤其是对于一些软硬件的配置文件,很多都选择了用XML文件来存取.XML文件简单易用,而且可以在任何应用程序中读写数据 ...

  8. WinForm中DataGridView对XML文件的读取

    转自http://www.cnblogs.com/a1656344531/archive/2012/11/28/2792863.html c#读取XML   XML文件是一种常用的文件格式,例如Win ...

  9. linux下使用libxml2实现对xml文件的读取及查询

    由于项目需要,这两天在用C++做XML文件解析的工作.在linux下有个很方便的操作xml文件的库——libxml2,它提供了一套创建和查询xml文件的C语言的接口.这篇博客主要介绍如何使用libxm ...

随机推荐

  1. Linux中的 openssl-opensslv

    问题 在安装内核模块系统突然出现以下错误 寻找问题 一开始我以为是openssl没有安装,故先进行openssl的检查: 输入yum info openssl 从图中可知,openssl是已经安装过了 ...

  2. POJ 1515 Street Directions (边双连通)

    <题目链接> 题目大意: 有m条无向边,现在把一些边改成有向边,使得所有的点还可以互相到达.输出改变后的图的所有边(无向边当成双向的有向边输出). 解题分析: 因为修改边后,所有点仍然需要 ...

  3. Physics Experiment 弹性碰撞 [POJ3684]

    题意 有一个竖直的管子内有n个小球,小球的半径为r,最下面的小球距离地面h高度,让小球每隔一秒自由下落一个,小球与地面,小球与小球之间可视为弹性碰撞,让求T时间后这些小球的分布 Input The f ...

  4. svn没有权限报出的错

  5. bulid tools

    输入:工程文件+编译说明文件: 处理:自动化构建工具+编译器: 输出:可执行文件. 相对于手动编译. 概述历史上 , 并通过构建自动化Makefile.今天 , 有两种一般类型的工具 : 自动工具 ( ...

  6. Java是如何加载资源文件的?(源码解毒)

    上文提到应老板要求开发一个测试工具能方便的加载存于文件中的测试参数,当时考虑既然是测试,把测试参数文件和测试类放在一起岂不是很方便,但是老板说:我的需求是你把测试参数文件放到统一文件夹下比如resou ...

  7. c语言的二进制表示的是什么码

    int -1 的二进制是 1111 1111 1111 1111 1111 1111 1111 1111 int -2 的二进制是 1111 1111 1111 1111 1111 1111 1111 ...

  8. python dgango简介 安装 多表查询

    一.socket服务器 import socket sk=socket.socket() sk.bind(("127.0.0.1",8890)) sk.listen() while ...

  9. 文本不能被选中的css

    -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; user-select: none;

  10. 关于HTTP协议学习(三)

    一,目录结构 HTTPS HTTP/2 HTTP 安全 HTTP 面试 HTTP 爬虫 HTTP 资源 HTTP 抓包工具及教程 Chrome HTTP 插件 HTTP 代理服务器 HTTP 图书 二 ...