import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.StringReader;

import java.io.UnsupportedEncodingException;

 

import org.dom4j.Document;

import org.dom4j.Element;

import org.dom4j.io.OutputFormat;

import org.dom4j.io.XMLWriter;

import org.xml.sax.InputSource;

import org.xml.sax.SAXException;

 

import net.sf.json.JSONObject;

import javax.xml.parsers.DocumentBuilder;

import javax.xml.parsers.DocumentBuilderFactory;

import javax.xml.parsers.ParserConfigurationException;

 

import oracle.net.aso.p;

 

public class XmlUtil {

/**

 *

 * @param document

 * @param path  指明路径和文件名

 * @param flag  是否转义

 */

public static void writeXML(Document root,String path,boolean flag) {

OutputFormat format = new OutputFormat("    ",flag);  

  format.setEncoding("utf-8");//设置编码格式  

  XMLWriter xmlWriter;

try {

xmlWriter = new XMLWriter(new FileOutputStream(path),format);

 xmlWriter.write(root);  

     xmlWriter.close();

} catch (UnsupportedEncodingException | FileNotFoundException e) {

  e.printStackTrace();

  throw new RuntimeException(e);

} catch (IOException e) {

 e.printStackTrace();

  throw new RuntimeException(e);

}

}


/**

 *

 * @param element

 * @param path  指明路径和文件名

 */

public static void writeXML(Element root,String path) {

function(){ //点差 http://www.fx61.com/faq/HantecGlobal/480.html

OutputFormat format = new OutputFormat("    ",true);  

  format.setEncoding("utf-8");//设置编码格式  

  XMLWriter xmlWriter;

try {

xmlWriter = new XMLWriter(new FileOutputStream(path),format);

 xmlWriter.write(root);  

     xmlWriter.close();

} catch (UnsupportedEncodingException | FileNotFoundException e) {

  e.printStackTrace();

  throw new RuntimeException(e);

} catch (IOException e) {

  e.printStackTrace();

  throw new RuntimeException(e);

}

}


 public static String jsonToXML(String json) {

 try {

    net.sf.json.xml.XMLSerializer xmlSerializer = new net.sf.json.xml.XMLSerializer();

        // 根节点名称

        xmlSerializer.setRootName("resource");

        // 不对类型进行设置

        xmlSerializer.setTypeHintsEnabled(false);

        String xmlStr = "";

        JSONObject jobj = JSONObject.fromObject(json);

        xmlStr = xmlSerializer.write(jobj);

        return xmlStr;

} catch (Exception e) {

// TODO: handle exception

  throw new RuntimeException(e);

 }

       

    }

 

}