import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class MyTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String dataXml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
"<root>" +
"<head>" +
"</head>" +
"<body>" +
"<parameter>" +
"<NAME>李俊华</NAME>" +
"<SEX>2</SEX>" +
"<SEX_NAME>女</SEX_NAME> "+
"<BIRTHDAY>19780708</BIRTHDAY>" +
"<TELEPHONE></TELEPHONE>" +
"<ADDRESS></ADDRESS>" +
"<REGION_CODE>130207</REGION_CODE>" +
"<UPLOAD_ORGANIZATION_CODE>新农合</UPLOAD_ORGANIZATION_CODE>" +
"<UPLOAD_ORGANIZATION_NAME>新农合</UPLOAD_ORGANIZATION_NAME>" +
"<zjlx>" +
"<CERT_TYPE>0_01</CERT_TYPE>" +
"<CERT_NUMBER>130222198006031620</CERT_NUMBER>" +
"<CERT_NAME>居民身份证</CERT_NAME>" +
"</zjlx>" +
"</parameter>" +
"</body>" +
"</root>";
HashMap hashMap = new HashMap();
ByteArrayInputStream byteArrayInputStream = null;
Document document = null;
SAXReader saxReader = new SAXReader();
Element root = null;
Element nodeElement = null;
try {
//将xml转成UTF-8的流
byteArrayInputStream = new ByteArrayInputStream(dataXml.getBytes("UTF-8"));
//利用dom4j将流读写成document形式
document = saxReader.read(byteArrayInputStream);
//获得root节点
root = document.getRootElement();
//利用root获取指定节点
nodeElement = (Element) root.selectSingleNode("/root/body/parameter");
List childNode = nodeElement.elements();
int childNodeSize = childNode.size();
//将指定节点下的属性保存到hashmap中
for(int i=0;i<childNodeSize;i++)
{
Element oneChildNode = (Element)childNode.get(i);
hashMap.put(oneChildNode.getName(), oneChildNode.getText());
}
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally
{
if (byteArrayInputStream != null)
{
try {
byteArrayInputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
byteArrayInputStream = null;
}
root.clearContent();
root = null;
nodeElement = null;
document = null;
saxReader = null;
}
}
}
分享到:
相关推荐
java读写xml文件 java读写xml文件 java读写xml文件 java读写xml文件 java读写xml文件 java读写xml文件
用java读取xml文件的四种方法
利用Java下的IO读取或写入xml及word,txt文件,且能有效去除乱码(很适用,且和POI组建比,少占了很多内存),这是我根据网上很多不同的版本,整合而出的一种最易最好的IO读写文件代码;
使用 Java 读取 XML 配置文件 Java 语言和 XML 技术可以说是黄金组合,网上已经有很多文章介绍 XML 在电子商务中的数据交换的作用。但是在平时系统开发中,我们不一定都用到数据交换,是否无法使用 XML?当然不是...
文档中有代码案例,详细讲解了使用java读取xml,并附带有关于xml的dtd讲解,里面包含详细的文档和代码案例。和读取xml所需的jar。
java读取xml文件 ,程序自带jar包在mylib下,加入工程即可,工程导入可用,更具自己需要读取xml文件生成所需文件。
java 读写xml文件操作, 简单易懂
简单利用java读取xml中的标签,也是写xml
java读写xml的代码
java实现读取xml文件内容
java读取XML文件内容的四种方法[归类].pdf
Java 读取 XML 文件的四种方法 在 Java 中读取 XML 文件有多种方法,本文将介绍四种常见的方法,分别使用 DOM、DOM4J、JDOM 和 SAX 解析器。 第一种方法:使用 DOM DOM(Document Object Model)是一种树形结构,...
java代码读取xml文件,生成树形图。这里是源码,可直接使用,是我项目中提取生成树的核心文件。
java从xml中读入数据并存入到sqlserver2005数据库中
java读取xml的四种方法,欢迎下载java读取xml的四种方法
java实现的一个读取本地xml文件的例子,进入正题: 需要的包jdom2-2.0.6.jar:下载地址,http://mvnrepository.com/artifact/org.jdom/jdom2 此例子比较简单
java读取xml文件的四种方法: 第一种 DOM 实现方法 第二种 DOM4J实现方法 第三种 JDOM实现方法 第四种SAX实现方法