java string转为xml

    一、使用最原始的javax.xml.parsers,标准的jdk api  
      
    // 字符串转XML  
    String xmlStr = "......";  
    StringReader sr = new StringReader(xmlStr);  
    InputSource is = new InputSource(sr);  
    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();  
    DocumentBuilder builder=factory.newDocumentBuilder();  
    Document doc = builder.parse(is);  
      
    //XML转字符串  
    TransformerFactory  tf  =  TransformerFactory.newInstance();  
    Transformer t = tf.newTransformer();  
    t.setOutputProperty("encoding","GB23121");//解决中文问题,试过用GBK不行  
    ByteArrayOutputStream  bos  =  new  ByteArrayOutputStream();  
    t.transform(new DOMSource(doc), new StreamResult(bos));  
    String xmlStr = bos.toString();  
      
    这里的XML DOCUMENT为org.w3c.dom.Document  
      
      二、使用dom4j后程式变得更简单  
      
    // 字符串转XML  
    String xmlStr = "......";  
    Document document = DocumentHelper.parseText(xmlStr);  
      
    // XML转字符串  
    Document document = ...;  
    String text = document.asXML();  
      
    这里的XML DOCUMENT为org.dom4j.Document  
      
      三、使用JDOM  
      
    JDOM的处理方式和第一种方法处理很类似  
      
    //字符串转XML  
    String xmlStr = ".....";  
    StringReader sr = new StringReader(xmlStr);  
    InputSource is = new InputSource(sr);  
    Document doc = (new SAXBuilder()).build(is);  
      
    //XML转字符串  
    Format format = Format.getPrettyFormat();  
    format.setEncoding("gb2312");//配置xml文档的字符为gb2312,解决中文问题  
    XMLOutputter xmlout = new XMLOutputter(format);  
    ByteArrayOutputStream bo = new ByteArrayOutputStream();  
    xmlout.output(doc,bo);  
    String xmlStr = bo.toString();  
      
    这里的XML DOCUMENT为org.jdom.Document  
      
      四、JAVASCRIPT中的处理  
      
    //字符串转XML  
    var xmlStr = ".....";  
    var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");  
    xmlDoc.async=false;  
    xmlDoc.loadXML(xmlStr);  
    //能够处理这个xmlDoc了  
    var name = xmlDoc.selectSingleNode("/person/name");  
    alert(name.text);  
      
    //XML转字符串  
    var xmlDoc = ......;  
    var xmlStr = xmlDoc.xml  
      
    这里的XML DOCUMENT为javascript版的XMLDOM  
原文地址:https://www.cnblogs.com/interdrp/p/5822018.html