解析xml字符串,如下
public static void main(String[] args) {
//System.out.println("cccc");
String fStr="<?xml version='1.0' encoding='UTF-8'?>" +
"<ROOT test='test123' cod='cod123'><Name>AAA</Name><Number>BBB</Number>" +
"<Recording>http://10.15.57.174/wav/2008/10/29/WG37100/ext37102/10.15.57.71!1~R!10292008_064002!37102!67256479!Ext!NA!1179371583!R.wav</Recording>" +
"<Orders>有</Orders></ROOT>";
try {
SAXReader reader = new SAXReader();
Document doc;
doc = DocumentHelper.parseText(fStr);
//Document doc = reader.read(ffile); //读取一个xml的文件
Element root = doc.getRootElement();
Attribute testCmd= root.attribute("test");
System.out.println(testCmd.getName()+"-***--"+testCmd.getValue());
Element eName = root.element("Name");
System.out.println("节点内容*--"+eName.getTextTrim());
} catch (Exception e) {
e.printStackTrace();
}
}
解析xml文件,xml文件如下
<?xml version="1.0" encoding="UTF-8"?>
<students>
<student age="25">
<name>AAA</name>
<collage leader='班长'>xxx学校</collage>
<telephone>13728704450</telephone>
<notes>男,1958年出生</notes>
</student>
<student age="21">
<name>BBB</name>
<collage leader='学生'>YYY学校</collage>
<telephone>1372sadgasg4450</telephone>
<notes>男,1968年出生,出生地长沙</notes>
</student>
<student age="29">
<name>CCC</name>
<collage leader='班主任'>北京大学</collage>
<telephone>13828704450</telephone>
<notes>女,漂亮</notes>
</student>
</students>
解析的代码如下
public void iterateWholeXML(String filename, HashMap<String, String> hm) {
SAXReader saxReader = new SAXReader();
try {
Document document = saxReader.read(new File(filename));
Element root = document.getRootElement();
// 用于记录学生编号的变量
int num = -1;
// 遍历根结点(students)的所有孩子节点(肯定是student节点)
for (Iterator iter = root.elementIterator(); iter.hasNext();) {
Element element = (Element) iter.next();
num++;
// 获取person节点的age属性的值
Attribute ageAttr = element.attribute("age");
if (ageAttr != null) {
String age = ageAttr.getValue();
if (age != null && !age.equals("")) {
hm.put(element.getName() + "-" + ageAttr.getName()
+ num, age);
} else {
hm.put(element.getName() + "-" + ageAttr.getName()
+ num, "20");
}
} else {
hm.put(element.getName() + "-age" + num, "20");
}
// 遍历student结点的所有孩子节点(即name,college,telphone,notes),并进行处理
for (Iterator iterInner = element.elementIterator(); iterInner
.hasNext();) {
Element elementInner = (Element) iterInner.next();
if (elementInner.getName().equals("collage")) {
hm.put(elementInner.getName() + num, elementInner
.getText());
// 获取college节点的leader属性的值
Attribute leaderAttr = elementInner.attribute("leader");
if (leaderAttr != null) {
String leader = leaderAttr.getValue();
if (leader != null && !leader.equals("")) {
hm.put(elementInner.getName() + "-"
+ leaderAttr.getName() + num, leader);
} else {
hm.put(elementInner.getName() + "-"
+ leaderAttr.getName() + num, "leader");
}
} else {
hm.put(elementInner.getName() + "-leader" + num,
"leader");
}
} else {
hm.put(elementInner.getName() + num, elementInner
.getText());
}
}
}
} catch (DocumentException e) {
e.printStackTrace();
}
}
分享到:
相关推荐
// 下面的是通过解析xml字符串的 doc = DocumentHelper.parseText(xml); // 将字符串转为XML Element rootElt = doc.getRootElement(); // 获取根节点 System.out.println("根节点:"+ rootElt.getName()); // ...
dom4j解析xml字符串实例
1、xml文档解析 2、 dom4j解析xml 3、实现xml文件解析 xml字符串解析 xml MAP键值对解析 4、实现xml写入与生成文件
解析XML文件(字符串)的两种方法,dom4j解析XML时候忽略DTD文件验证
Dom4j遍历解析XMLDom4j遍历解析XML
使用dom4j解析xml,可以解析xml文件,或者String型的xml字符串
该文挡中包含了用dom4j解析xml文件的方法和步骤,包括从文件中解析和从xml格式的字符串中解析
dom4j以String的方式读取XML的内容,并给String的值赋值,写入XML中
通过dom4j解析xml文件或xml字符串,同时利用dom4j解析soap报文,解析出所需要的字段,使用的相对比较基础,有需要的可以参考一下。
javascript中,不论是解析xml文件,还是xml格式的字符串,都是通过DOM对象来进行操作的。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看 资源截图: 资源太大,传百度网盘了,链接...
本篇文章主要是对通过dom4j解析xml字符串的示例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
WebService在传递数据的时候只能传递字符串,当我们返回一些简单的字符串时我们可以直接返回,但是当我们想返回比如List,Map等复杂类型的数据时拼接字符串就是个很麻烦的工作,这时我们就用到了dom4j这个工具。
使用 dom4j 将 XML 文档解析为我自己的格式 格式: 私人字符串名称; 私有字符串值; 私人列表 childList; private Map<String> propMap = new HashMap(); 意义 将 XML 文档对象转换成这个格式对象(XmlElement...
xml数据前后台解析;提供了两种方式:dom4j与jdom对xml文件、xml字符串的读与写操作;同时实现在前台用jquery解析xml,将数据展示在页面上,程序可以跑
将xml写成字符串的形式,采用dom4j进行解析,一个简单的例子
dom4j解析节点名称和值,放入一个string类型的xml字符串输出标签对应的名称以及值的map
Dom4jDemo字符串转xml,通过dom4j解析xml demo
三、使用dom4j解析xml文件 5 1. 构建dom4j树 5 2. 获取节点 5 3. 获取属性 6 4. 使用XPath获取节点和属性 6 四、使用dom4j修改xml文件 7 五、常用方法 8 1.Element元素API 8 2. Attribute属性API 8 2. 字符串转化 8...
Java解析XML的四种方法 1. DOM生成和解析XML文档 2. SAX生成和解析XML文档 3. DOM4J生成和解析XML文档 4. JDOM生成和解析XML
使用SAX DOM两种解析方式解析文件