java jdom 解析CDATA内容
2024-09-27 18:29:06
package com; import java.io.IOException;
import java.io.StringReader;
import java.util.List; import org.jdom.CDATA;
import org.jdom.Comment;
import org.jdom.DocType;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.EntityRef;
import org.jdom.JDOMException;
import org.jdom.ProcessingInstruction;
import org.jdom.Text;
import org.jdom.input.SAXBuilder; public class test {
public static void main(String[] args){
String xml =
"<?xml version=\"1.0\" encoding=\"UTF-8\" ?>" +
"<SrvCont>" +
"<SrvRoot>"+
"<![CDATA[" +
"<?xml version=\"1.0\" encoding=\"UTF-8\" ?>" +
"<Item><ItemId>seqInit</ItemId><ItemValue>20161126BLUS3110000001</ItemValue></Item>" +
"<Item><ItemId>content</ItemId><ItemValue>测试内容</ItemValue></Item>" +
"<Item><ItemId>resion</ItemId><ItemValue>测试</ItemValue></Item>" +
"]]></SrvRoot></SrvCont>"; SAXBuilder builder = new SAXBuilder();
try {
Document document = builder.build(new StringReader(xml));
Element root = document.getRootElement();
Element data = root.getChild("SrvRoot"); //
// Reading the mixed content of an xml element and iterate
// the result list. This list object can contains any of the
// following objects: Comment, Element, CDATA, DocType,
// ProcessingInstruction, EntityRef and Text.
//
List content = data.getContent();
String result = "";
for (Object o : content) {
if (o instanceof Comment) {
Comment comment = (Comment) o;
System.out.println("Comment = " + comment);
} else if (o instanceof Element) {
Element element = (Element) o;
System.out.println("Element = " + element);
} else if (o instanceof CDATA) {
CDATA cdata = (CDATA) o;
result = cdata.getText();
System.out.println("CDATA = " + result);
} else if (o instanceof DocType) {
DocType docType = (DocType) o;
System.out.println("DocType = " + docType);
} else if (o instanceof ProcessingInstruction) {
ProcessingInstruction pi = (ProcessingInstruction) o;
System.out.println("PI = " + pi);
} else if (o instanceof EntityRef) {
EntityRef entityRef = (EntityRef) o;
System.out.println("EntityRef = " + entityRef);
} else if (o instanceof Text) {
Text text = (Text) o;
System.out.println("Text = " + text);
}
}
} catch (JDOMException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
} }
最新文章
- C#为IE编写BHO插件心得
- Myeclipse中的web项目审查(jquery-2.1.1.min.js)出现错误
- SQL笔记-第五章,函数
- redis存储对象,实体类新加字段空指针问题处理
- Scrapy源码学习(二)
- Mysql备份--mysqldump&;outfile
- linux下操作PostgreSQL的常用命令
- Java内存溢出的详细解决方案
- 如何备份MySql的数据库
- IEnumerable
- 1. Hyper上的CentOS 6.5 网络配置
- 将SWF文件用作资源打包
- Vue2.0源码阅读笔记--双向绑定实现原理
- python 日期 &; 时间
- [BZOJ4907]柠檬
- setInterval()使用时易疏忽的点
- InfluxDB基本概念和操作
- bfs-poj3278
- kvm安装配置使用centos6.5
- ASP入门(六)-Response对象
热门文章
- ChemDraw Prime 15怎么绘制立体化学结构
- 让所有IE支持HTML5的解决方案
- AuthorizeAttribute示例
- 深度解析Objective-C笔试题
- Array.prototype.filter(Boolean)
- HDU_5532_Almost Sorted Array
- Elasticsearch 中文分词(elasticsearch-analysis-ik) 安装
- Zipline Development Guidelines
- Error-The content of element type ";web-app"; must match ";(icon?,display-
- 设计模式中类的关系UML