JDOM相关知识
来源:互联网 发布:php在线讲解 编辑:程序博客网 时间:2024/05/01 00:06
package com.huawei.common;
import java.io.IOException;
import java.io.StringReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.xml.sax.InputSource;
public class Test {
public static void main(String[] args) throws JDOMException, IOException {
String xml = "<xml><code><![CDATA[code]]></code><msg><![CDATA[msg]]></msg><responseId>12345678</responseId></xml>";
String m ="<Res><nimabi><![CDATA[<?xml version='1.0' encoding='UTF-8'?><msg><File name='12'/><File name='12'/><File name='12'/></msg> ]]></nimabi></Res>";
System.out.println(parseXmlToList2(xml)[0]);
System.out.println(parseXmlToList2(m)[0]);
String mm = "<?xml version='1.0' encoding='UTF-8'?><msg><File name='12'/><File name='12'/><File name='12'/></msg>";
StringReader read = new StringReader(mm);
// 创建新的输入源SAX 解析器将使用 InputSource 对象来确定如何读取 XML 输入
InputSource source = new InputSource(read);
// 创建一个新的SAXBuilder
SAXBuilder sb = new SAXBuilder();
// 通过输入源构造一个Document
Document doc = (Document) sb.build(source);
Element root = doc.getRootElement();// 指向根节点
List<Element> es = root.getChildren();
for(Element e: es){
System.out.println(e.getAttributeValue("name"));
}
}
@SuppressWarnings("unchecked")
private static Object[] parseXmlToList2(String xml){
List<Map> argMapList = new ArrayList<Map>();
Map retMap = new HashMap();
try {
StringReader read = new StringReader(xml);
// 创建新的输入源SAX 解析器将使用 InputSource 对象来确定如何读取 XML 输入
InputSource source = new InputSource(read);
// 创建一个新的SAXBuilder
SAXBuilder sb = new SAXBuilder();
// 通过输入源构造一个Document
Document doc = (Document) sb.build(source);
Element root = doc.getRootElement();// 指向根节点
List<Element> es = root.getChildren();
if (es != null && es.size() != 0) {
for (Element element : es) {
retMap.put(element.getName(), element.getValue());
}
}
argMapList.add(retMap);
} catch (Exception e) {
e.printStackTrace();
}
return new Object[] {argMapList};
}
import java.io.IOException;
import java.io.StringReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.xml.sax.InputSource;
public class Test {
public static void main(String[] args) throws JDOMException, IOException {
String xml = "<xml><code><![CDATA[code]]></code><msg><![CDATA[msg]]></msg><responseId>12345678</responseId></xml>";
String m ="<Res><nimabi><![CDATA[<?xml version='1.0' encoding='UTF-8'?><msg><File name='12'/><File name='12'/><File name='12'/></msg> ]]></nimabi></Res>";
System.out.println(parseXmlToList2(xml)[0]);
System.out.println(parseXmlToList2(m)[0]);
String mm = "<?xml version='1.0' encoding='UTF-8'?><msg><File name='12'/><File name='12'/><File name='12'/></msg>";
StringReader read = new StringReader(mm);
// 创建新的输入源SAX 解析器将使用 InputSource 对象来确定如何读取 XML 输入
InputSource source = new InputSource(read);
// 创建一个新的SAXBuilder
SAXBuilder sb = new SAXBuilder();
// 通过输入源构造一个Document
Document doc = (Document) sb.build(source);
Element root = doc.getRootElement();// 指向根节点
List<Element> es = root.getChildren();
for(Element e: es){
System.out.println(e.getAttributeValue("name"));
}
}
@SuppressWarnings("unchecked")
private static Object[] parseXmlToList2(String xml){
List<Map> argMapList = new ArrayList<Map>();
Map retMap = new HashMap();
try {
StringReader read = new StringReader(xml);
// 创建新的输入源SAX 解析器将使用 InputSource 对象来确定如何读取 XML 输入
InputSource source = new InputSource(read);
// 创建一个新的SAXBuilder
SAXBuilder sb = new SAXBuilder();
// 通过输入源构造一个Document
Document doc = (Document) sb.build(source);
Element root = doc.getRootElement();// 指向根节点
List<Element> es = root.getChildren();
if (es != null && es.size() != 0) {
for (Element element : es) {
retMap.put(element.getName(), element.getValue());
}
}
argMapList.add(retMap);
} catch (Exception e) {
e.printStackTrace();
}
return new Object[] {argMapList};
}
}
有的时候调用wsdl 接口会出现有
<Res>
<nimabi>
<![CDATA[
<?xml version='1.0' encoding='UTF-8'?>
<msg>
<File name='12'/>
<File name='12'/>
<File name='12'/>
</msg>
]]>
</nimabi>
</Res>";这样的字符串返回,按照上面这种方法可取到
<?xml version='1.0' encoding='UTF-8'?>
<msg>
<File name='12'/>
<File name='12'/>
<File name='12'/>
</msg> 这样的字符串
再用JDOM解析就OK了
0 0
- JDOM相关知识
- JDOM相关介绍
- SAX,DOM,JAXP,JDOM,DOM4J的知识
- Jdom
- JDOM
- JDOM
- JDom
- JDOM
- JDOM
- JDOM
- JDOM
- jdom
- JDOM
- JDOM
- jdom
- JDom
- JDOM
- JDOM
- 项目Debug-后台
- 【搜索】【NOI1999】生日蛋糕
- 键盘快捷键
- HashMap的内部实现机制,Hash是怎样实现的,什么时候ReHash
- NOI 国家集训队论文集
- JDOM相关知识
- spark的安装部署--10(源码编译安装hadoop+spark+解决64位系统本地库问题)
- 黑马程序员————C语言流程控制
- p次方求和
- 《大败局1》阅读笔记
- Nginx的安装,以及总是出现找不到pcre library的解决方法。
- 欢迎使用CSDN-markdown编辑器
- PYTHON 一些基础面试题目总结
- Java学习3