string 转化xml && xml转化为string

一、使用最原始的javax.xml.parsers,标准的jdk api

// 字符串转XML

  1. StringxmlStr=\"......\";
  2. StringReadersr=newStringReader(xmlStr);
  3. InputSourceis=newInputSource(sr);
  4. DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();
  5. DocumentBuilderbuilder=factory.newDocumentBuilder();
  6. Documentdoc=builder.parse(is);


//XML转字符串

?
    TransformerFactorytf=TransformerFactory.newInstance();
  1. Transformert=tf.newTransformer();
  2. t.setOutputProperty(\"encoding\",\"GB23121\");//解决中文问题,试过用GBK不行
  3. ByteArrayOutputStreambos=newByteArrayOutputStream();
  4. t.transform(newDOMSource(doc),newStreamResult(bos));
  5. StringxmlStr=bos.toString();

这里的XML DOCUMENT为org.w3c.dom.Document

  二、使用dom4j后程式变得更简单

?
    //字符串转XML
  1. StringxmlStr=\"......\";
  2. Documentdocument=DocumentHelper.parseText(xmlStr);
  3. //XML转字符串
  4. Documentdocument=...;
  5. Stringtext=document.asXML();
  6. 这里的XMLDOCUMENT为org.dom4j.Document

  三、使用JDOM

JDOM的处理方式和第一种方法处理很类似

?
    StringxmlStr=\".....\";
  1. Documentdoc=(newSAXBuilder()).build(is);
  2. Formatformat=Format.getPrettyFormat();
  3. format.setEncoding(\"gb2312\");//配置xml文档的字符为gb2312,解决中文问题
  4. XMLOutputterxmlout=newXMLOutputter(format);
  5. ByteArrayOutputStreambo=newByteArrayOutputStream();
  6. xmlout.output(doc,bo);
  7. StringxmlStr=bo.toString();
  8. 这里的XMLDOCUMENT为org.jdom.Document

 四、JAVASCRIPT中的处理

[javascript] ?
    varxmlStr=\".....\";
  1. varxmlDoc=newActiveXObject(\"Microsoft.XMLDOM\");
  2. xmlDoc.async=false;
  3. xmlDoc.loadXML(xmlStr);
  4. //能够处理这个xmlDoc了
  5. varname=xmlDoc.selectSingleNode(\"/person/name\");
  6. alert(name.text);
  7. varxmlDoc=......;
  8. varxmlStr=xmlDoc.xml
  9. 这里的XMLDOCUMENT为javascript版的XMLDOM

    string 转化xml xml转化为string

相关文章

引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技术都是为了满足人的生产生活需要而产生的。具体...
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket Reprint it anywhere u want. 文章...
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket Reprint it anywhere u want. 文章...
http://blog.jobbole.com/79252/ 引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技术都是为了满...
(点击上方公众号,可快速关注) 公众号:smart_android 作者:耿广龙|loonggg 点击“阅读原文”,可查看...
一、xml与xslt 相信所有人对xml都不陌生,其被广泛的应用于数据数据传输、保存与序列化中,是一种极为强...