JAVA dom4j 解析XML格式的字符串
2013-08-21 11:30
344 查看
字符串:
String strm="<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
+ "<message>"+
"<rows><dataRow><material>C001</material>"+
"<num>9.0</num>"+
"<jobId>2010001</jobId></dataRow>"+
"<dataRow><material>C002</material>"+
"<num>4.0</num>+
"<jobId>2010002</jobId></dataRow></rows></message>";
解析代码:
public String jiexixml(String str)
{ String flag="1";//1解析成功,0解析失败
try
{
Document doc = (Document) DocumentHelper.parseText(str); // 将字符串转为XML
Element rootElt = doc.getRootElement(); // 获取根节点
System.out.println("根节点:" + rootElt.getName()); // 拿到根节点的名称
Element root = null;
Iterator iter1 = rootElt.elementIterator("rows");
while(iter1.hasNext())
{
Element element = (Element) iter1.next();
List list = element.elements("dataRow");//获取包含有"dataRow"的所有数据
for(int i=0;i<list.size();i++)
{
Map map = new HashMap();
Element els = (Element) list.get(i);
Iterator iterator = els.elementIterator();
while (iterator.hasNext()) {
Element elms = (Element) iterator.next();
String key=elms.getName(); //获取子节点的名称[设置为键]
String value=elms.getTextTrim(); //获取子节点的值
map.put(key, value);
}///最后获得的第1个Map的键值对为map("material","C001");map("num","9.0");map("jobId","2010001");
}
}
}
catch (Exception e)
{flag="0";}
return flag;
}
String strm="<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
+ "<message>"+
"<rows><dataRow><material>C001</material>"+
"<num>9.0</num>"+
"<jobId>2010001</jobId></dataRow>"+
"<dataRow><material>C002</material>"+
"<num>4.0</num>+
"<jobId>2010002</jobId></dataRow></rows></message>";
解析代码:
public String jiexixml(String str)
{ String flag="1";//1解析成功,0解析失败
try
{
Document doc = (Document) DocumentHelper.parseText(str); // 将字符串转为XML
Element rootElt = doc.getRootElement(); // 获取根节点
System.out.println("根节点:" + rootElt.getName()); // 拿到根节点的名称
Element root = null;
Iterator iter1 = rootElt.elementIterator("rows");
while(iter1.hasNext())
{
Element element = (Element) iter1.next();
List list = element.elements("dataRow");//获取包含有"dataRow"的所有数据
for(int i=0;i<list.size();i++)
{
Map map = new HashMap();
Element els = (Element) list.get(i);
Iterator iterator = els.elementIterator();
while (iterator.hasNext()) {
Element elms = (Element) iterator.next();
String key=elms.getName(); //获取子节点的名称[设置为键]
String value=elms.getTextTrim(); //获取子节点的值
map.put(key, value);
}///最后获得的第1个Map的键值对为map("material","C001");map("num","9.0");map("jobId","2010001");
}
}
}
catch (Exception e)
{flag="0";}
return flag;
}
相关文章推荐
- Dom4j解析xml格式的字符串【java】
- Java生成和解析XML格式文件和字符串的实例代码【dom4j中的SAXReader对象读取并解析xml文件】
- JAVA解析XML格式字符串 【常用】
- java dom4j 解析xml字符串的操作实例
- JAVA解析XML格式字符串
- JAVA解析XML格式字符串
- java解析xml字符串(用dom4j) (转载)
- 将JavaBean用DOM4J转成xml格式的字符串,用DOM4J解析xml格式的字符串
- Java生成和解析XML格式文件和字符串的实例代码
- java dom4j的解析xml形式的字符串
- JAVA解析XML格式字符串
- dom4j解析xml文件 或者xml格式字符串
- java解析xml字符串(用dom4j)
- 使用Dom4j来解析xml格式字符串
- JAVA解析XML格式字符串
- Java生成和解析XML格式文件和字符串
- Java生成和解析XML格式文件和字符串的实例代码
- java解析xml字符串(用dom4j)
- Java使用dom4j解析XML字符串
- java解析xml格式字符串