操作XML的Java工具类

10年前
    import java.io.File;        import java.io.FileInputStream;        import java.io.FileNotFoundException;        import java.io.FileOutputStream;        import java.io.IOException;        import java.io.InputStream;                import org.jdom.Document;        import org.jdom.Element;        import org.jdom.JDOMException;        import org.jdom.input.SAXBuilder;        import org.jdom.output.Format;        import org.jdom.output.XMLOutputter;                /**        * XML工具类        * @author LXY        *        */        public class XMLUtil {            /**            * 根据xml路径得到rootElement            * @param xmlPath            * @return            * @throws IOException             */            public static Element getXMLRoot(InputStream in) throws IOException {                SAXBuilder builder = new SAXBuilder();                Document doc = null;                Element root = null;                try {                    doc = builder.build(in);                    root = doc.getRootElement();                } catch (JDOMException e) {                    e.printStackTrace();                } catch (IOException e) {                    e.printStackTrace();                }finally{                    in.close();                }                return root;            }                        /**            * 根据xml路径得到rootElement 重载方法            * @param xmlPath            * @return            * @throws IOException             */            public static Element getXMLRoot(String xmlPath)  {                SAXBuilder builder = new SAXBuilder();                FileInputStream in = null;                Document doc = null;                Element root = null;                try {                    in = new FileInputStream(new File(xmlPath));                    doc = builder.build(in);                    root = doc.getRootElement();                } catch (JDOMException e) {                    e.printStackTrace();                } catch (IOException e) {                    e.printStackTrace();                } finally {                    try {                        if(in != null) {                            in.close();                        }                    } catch (IOException e) {                        e.printStackTrace();                    }                }                return root;            }                        /**            * 根据xml文档对象Docuemnt生成xml文件到指定路径            * @param doc            * @param xmlPath            */            public static void createXML(Document doc, String xmlPath) throws Exception{                XMLOutputter outputter = null;                 Format format = Format.getCompactFormat();                 format.setEncoding("UTF-8");                 format.setIndent("    ");                 outputter = new XMLOutputter(format);                 FileOutputStream out = null;                try {                    out = new FileOutputStream(xmlPath);                    outputter.output(doc, out);                } catch (FileNotFoundException e) {                    e.printStackTrace();                    throw e;                } catch (IOException e) {                    e.printStackTrace();                    throw e;                } finally {                    if(out != null)  {                        out.close();                    }                }            }        }