Dom4J 解析xml ,类查询
/**
* 从XML文件比对,传入provinceId 返回 provinceShortName
* @param provinceid
* @return
*/
public static String provinceIdEXprovinceCodeFromXml(String provinceid){
String provinceShortName="";
try {
SAXReader sax = new SAXReader();
File file=new File(ServletActionContext.getServletContext().getRealPath("/zxdc")+File.separatorChar+"provinceCode.xml");
System.out.println("xml路径:"+ServletActionContext.getServletContext().getRealPath("/zxdc/xml")+File.separatorChar+"provinceCode.xml");
// File file=new File("E:\\provinceCode.xml"); //测试路径
Document xmlDoc = sax.read(file);
Element root = xmlDoc.getRootElement();//根节点
Iterator it = root.elementIterator("province");
while(it.hasNext()){ //循环xml子节点
Element province = (Element)it.next();
if (provinceid.equals(province.attributeValue("id"))) {//传入参数 provinceId与 子节点id作比对、类查询
provinceShortName=province.elementText("sname");//shortName赋值,用于return
}
}
} catch (DocumentException e) {
e.printStackTrace();
}
return provinceShortName;
}
dom4j解析xml文件节点,做类查询操作。
循环比对xml文档中的provinceId ,并返回相应的简拼。
<?xml version="1.0" encoding="UTF-8"?>
<provinces>
<province id="11">
<name>北京市</name>
<sname>BJ</sname>
</province>
<province id="12">
<name>天津市</name>
<sname>TJ</sname>
</province>
<province id="13">
<name>河北省</name>
<sname>HE</sname>
</province>
<province id="14">
<name>山西省</name>
<sname>SX</sname>
</province>
<province id="15">
<name>内蒙古自治区</name>
<sname>NM</sname>
</province>
<province id="21">
<name>辽宁省</name>
<sname>LN</sname>
</province>
<province id="22">
<name>吉林省</name>
<sname>JL</sname>
</province>
<province id="23">
<name>黑龙江省</name>
<sname>HL</sname>
</province>
<province id="31">
<name>上海市</name>
<sname>SH</sname>
</province>
<province id="32">
<name>江苏省</name>
<sname>JS</sname>
</province>
<province id="33">
<name>浙江省</name>
<sname>ZJ</sname>
</province>
<province id="34">
<name>安徽省</name>
<sname>AH</sname>
</province>
<province id="35">
<name>福建省</name>
<sname>FJ</sname>
</province>
<province id="36">
<name>江西省</name>
<sname>JX</sname>
</province>
<province id="37">
<name>山东省</name>
<sname>SD</sname>
</province>
<province id="41">
<name>河南省</name>
<sname>HA</sname>
</province>
<province id="42">
<name>湖北省</name>
<sname>HB</sname>
</province>
<province id="43">
<name>湖南省</name>
<sname>HN</sname>
</province>
<province id="44">
<name>广东省</name>
<sname>GD</sname>
</province>
<province id="45">
<name>广西壮族自治区</name>
<sname>GX</sname>
</province>
<province id="46">
<name>海南省</name>
<sname>HI</sname>
</province>
<province id="50">
<name>重庆市</name>
<sname>CQ</sname>
</province>
<province id="51">
<name>四川省</name>
<sname>SC</sname>
</province>
<province id="52">
<name>贵州省</name>
<sname>GZ</sname>
</province>
<province id="53">
<name>云南省</name>
<sname>YN</sname>
</province>
<province id="54">
<name>西藏自治区</name>
<sname>XZ</sname>
</province>
<province id="61">
<name>陕西省</name>
<sname>SN</sname>
</province>
<province id="62">
<name>甘肃省</name>
<sname>GS</sname>
</province>
<province id="63">
<name>青海省</name>
<sname>QH</sname>
</province>
<province id="64">
<name>宁夏回族自治区</name>
<sname>NX</sname>
</province>
<province id="65">
<name>新疆维吾尔自治区</name>
<sname>XJ</sname>
</province>
</provinces>
Dom4J 解析xml ,类查询的更多相关文章
- 【JAVA使用XPath、DOM4J解析XML文件,实现对XML文件的CRUD操作】
一.简介 1.使用XPath可以快速精确定位指定的节点,以实现对XML文件的CRUD操作. 2.去网上下载一个“XPath帮助文档”,以便于查看语法等详细信息,最好是那种有很多实例的那种. 3.学习X ...
- 用DOM4J解析XML文件案例
用DOM4J解析XML文件案例,由于DOM4J不像JAXP属于JAVASE里,所以如果要使用DOM4J,则必须额外引入jar包,如图:
- java使用dom4j解析xml文件
关于xml的知识,及作用什么的就不说了,直接解释如何使用dom4j解析.假如有如下xml: dom4j解析xml其实很简单,只要你有点java基础,知道xml文件.结合下面的xml文件和java代码, ...
- 使用DOM4J解析XMl文件与读取XML文件
XML文件 <?xml version="1.0" encoding="UTF-8"?> <bookstore> <book id ...
- dom4j解析XML的CURD操作
在开发JavaWeb项目中通常是利用XML配置文件来提高应用程序的访问效率,而在配置XML的同时,更多时候是对XML进行解析. 一.解析XML配置文件有两种机制: DOM和SAX的机制: DOM是将整 ...
- DOM4J解析XML文档
Tip:DOM4J解析XML文档 Dom4j是一个简单.灵活的开放源代码的库.Dom4j是由早期开发JDOM的人分离出来而后独立开发的.与JDOM不同的是,dom4j使用接口和抽象基类,虽然Dom4j ...
- dom4j解析xml文档全面介绍
一.dom4j介绍 dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个非常非常优秀的Java XML API,具有性能优异.功能强大和极端易用使用的特点, ...
- Java进阶(二十七)使用Dom4j解析XML文件
使用Dom4j解析XML文件 写在前面的话 由于论文实验要求,需要实现操作XML文档,为此想到了dom4j这个工具,使用之后深感受益.在此分享给大家,以此共勉. 注:本文转载自http://blog. ...
- 使用dom4j 解析xml文件
//使用dom4j 解析xml文件,升级版,dom4j是对dom的封装 //重点 package com.offcn.utils; import java.io.File; import java.i ...
随机推荐
- hive界面工具SQL Developer的安装;使用sql developer连接hive;使用sql developer连接mysql
需要oracle帐号登录后下载 1.下载: http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/inde ...
- Pixhawk之姿态解算篇(1)_入门篇(DCM Nomalize)
一.开篇 慢慢的.慢慢的.慢慢的就快要到飞控的主要部分了,飞控飞控就是所谓的飞行控制呗,一个是姿态解算一个是姿态控制,解算是解算,控制是控制,各自负责各自的任务.我也不懂.还在学习中~~~~ 近期看姿 ...
- hdu5379||2015多校联合第7场1011 树形统计
pid=5379">http://acm.hdu.edu.cn/showproblem.php? pid=5379 Problem Description Little sun is ...
- 【Scala类型系统】自身类型(self type)引用
定义 特质能够要求混入它的类扩展自还有一个类型,可是当使用自身类型(self type)的声明来定义特质时(this: ClassName =>).这种特质仅仅能被混入给定类型的子类其中. 如果 ...
- Azure Mobile App - Custom Authentication
Custom Authentication: 1. For OLD Mobile Service - https://azure.microsoft.com/en-us/documentation/a ...
- 【bzoi2006】【狼抓兔子】【最小割】
Description Source: Beijing2006 [BJOI2006] 八中OJ上本题链接:http://www.lydsy.com/JudgeOnline/problem.php?id ...
- web前端面试系列 - js中的prototype
js中一切皆为对象,其中函数也是一种对象, 而每个函数都有一个prototype属性,其值也是一个对象. 一.prototype的作用 1. 在多个实例对象之间共享数据和方法. 2. 通过原型链实现继 ...
- Nginx学习——进程模型(master 进程)
进程模型 Nginx分为Single和Master两种进程模型.Single模型即为单进程方式工作,具有较差的容错能力,不适合生产之用.Master模型即为一个master进程+N个worker进程的 ...
- angularJS contenteditable 指令双向绑定
项目遇到需求有点奇葩:双击div使其可编辑,失去焦点后进行数据绑定 通过自定义指令完成 好了上代码: .directive('contentEditable', function() { return ...
- 《学习opencv》笔记——矩阵和图像操作——cvConvertScale,cvConvertScaleAbs,cvCopy and cvCountNonZero
矩阵和图像的操作 (1)cvConvertScale函数 其结构: void cvConvertScale( //进行线性变换,将src乘scale加上shift保存到dst const CvArr* ...