Dom4j 读取一个XML文件和将String写成XML文件

来源:互联网 发布:测试网络丢包率 编辑:程序博客网 时间:2024/05/16 19:16

dom4j保存文件xml格式和读取XML文件内容,代码如下:


package com.qmjs.imutimport java.io.File;import java.io.FileWriter;import java.io.IOException;import java.io.InputStream;import org.apache.log4j.Logger;import org.dom4j.Document;import org.dom4j.DocumentHelper;import org.dom4j.io.OutputFormat;import org.dom4j.io.SAXReader;import org.dom4j.io.XMLWriter;public class Dom4jUtils {private static final Logger LOG = Logger.getLogger(Dom4jUtils.class);private Dom4jUtils() {super();}/** * 使用Dom4j读取一个XML文件 *  * @param xmlFileName * @return */public static Document loadXML(String xmlFileName) {InputStream is = null;try {LOG.info("使用Dom4j读取一个XML文件: " + xmlFileName);is = Dom4jUtils.class.getClassLoader().getResourceAsStream(xmlFileName);SAXReader xmlReader = new SAXReader();xmlReader.setMergeAdjacentText(true);xmlReader.setEncoding(null);xmlReader.setStripWhitespaceText(true);xmlReader.setValidation(false);xmlReader.setIgnoreComments(true);Document document = xmlReader.read(is);document.normalize();return document;} catch (Exception e) {LOG.error(e.getMessage(), e);} finally {if (is != null) {try {is.close();} catch (IOException e) {LOG.error(e.getMessage(), e);}}}return null;}/** * 将一个string内容写成mxl格式文件 *  * @param file * @param content * @return */public static boolean writeXml(File file, String content) {XMLWriter writer = null;try {Document document = DocumentHelper.parseText(content);OutputFormat format = OutputFormat.createPrettyPrint();format.setEncoding("utf-8");writer = new XMLWriter(new FileWriter(file), format);writer.write(document);writer.flush();return true;} catch (Exception e) {LOG.error(e.getMessage(), e);} finally {if (writer != null) {try {writer.close();} catch (IOException e) {LOG.error(e.getMessage(), e);}}}return false;}}


2 0
原创粉丝点击