一、使用最原始的javax.xml.parsers,标准的jdk api
// 字符串转XML
- StringxmlStr=\"......\";
- StringReadersr=newStringReader(xmlStr);
- InputSourceis=newInputSource(sr);
- DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();
- DocumentBuilderbuilder=factory.newDocumentBuilder();
- Documentdoc=builder.parse(is);
//XML转字符串
这里的XML DOCUMENT为org.w3c.dom.Document
二、使用dom4j后程式变得更简单
- //字符串转XML
- StringxmlStr=\"......\";
- Documentdocument=DocumentHelper.parseText(xmlStr);
- //XML转字符串
- Documentdocument=...;
- Stringtext=document.asXML();
- 这里的XMLDOCUMENT为org.dom4j.Document
三、使用JDOM
JDOM的处理方式和第一种方法处理很类似
- //字符串转XML
- StringxmlStr=\".....\";
- StringReadersr=newStringReader(xmlStr);
- InputSourceis=newInputSource(sr);
- Documentdoc=(newSAXBuilder()).build(is);
- //XML转字符串
- Formatformat=Format.getPrettyFormat();
- format.setEncoding(\"gb2312\");//配置xml文档的字符为gb2312,解决中文问题
- XMLOutputterxmlout=newXMLOutputter(format);
- ByteArrayOutputStreambo=newByteArrayOutputStream();
- xmlout.output(doc,bo);
- StringxmlStr=bo.toString();
- 这里的XMLDOCUMENT为org.jdom.Document
四、JAVASCRIPT中的处理
- //字符串转XML
- varxmlStr=\".....\";
- varxmlDoc=newActiveXObject(\"Microsoft.XMLDOM\");
- xmlDoc.async=false;
- xmlDoc.loadXML(xmlStr);
- //能够处理这个xmlDoc了
- varname=xmlDoc.selectSingleNode(\"/person/name\");
- alert(name.text);
- //XML转字符串
- varxmlDoc=......;
- varxmlStr=xmlDoc.xml
- 这里的XMLDOCUMENT为javascript版的XMLDOM