操作XML的Java工具类
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(); } } } }