码迷,mamicode.com
首页 > 编程语言 > 详细

java jdom 解析CDATA内容

时间:2016-11-26 23:41:21      阅读:551      评论:0      收藏:0      [点我收藏+]

标签:uil   main   etc   result   com   pre   his   eof   res   

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();  
    }  
	}
	
	
}

  

java jdom 解析CDATA内容

标签:uil   main   etc   result   com   pre   his   eof   res   

原文地址:http://www.cnblogs.com/renjie0520/p/6105230.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!