JSON

DOM4j对XML文件的操作(2)

字号+ 作者:H5之家 来源:H5之家 2015-11-03 15:32 我要评论( )

span style=font-size:18px;@Testpublic void createXML() throws Exception, FileNotFoundException{Document dom=DocumentHelper.createDocument();//自己创建一个document对象Element root=dom.addElement(citys

<span style="font-size:18px;">@Test public void createXML() throws Exception, FileNotFoundException{ Document dom=DocumentHelper.createDocument();//自己创建一个document对象 Element root=dom.addElement("citys");//创建的第一个节点就是root节点 Element cityE=root.addElement("city"); cityE.addAttribute("id", "0737"); cityE.addElement("city1").setText("湖南"); cityE.addElement("city2").setText("益阳"); Element cityEE=root.addElement("city"); cityEE.addAttribute("id", "0777"); cityEE.addElement("city1").setText("广州"); cityEE.addElement("city2").setText("深圳"); XMLWriter wr=new XMLWriter(new FileOutputStream("./src/xml/11.xml")); wr.write(dom); wr.close();</span><span style="font-size:14px;"> }</span>创建的xml文件<pre name="code" class="html"><?xml version="1.0" encoding="UTF-8"?> <citys> <city id="0737"> <city1>湖南</city1><city2>益阳</city2> </city> <city id="0777"> <city1>广州</city1><city2>深圳</city2> </city> </citys>

方式一:

<span style="font-size:18px;">//存储文件 《方式一》 XMLWriter write=new XMLWriter(new FileOutputStream("./src/xml/2.xml")); write.write(dom); write.close();*/</span> 方式

/<span style="font-size:18px;">/存储方式二,可以指定格式,字符编码</span><span style="font-size:18px;"><span style="white-space:pre"> </span>紧凑的格式 OutputFormat format=OutputFormat.createPrettyPrint(); format.setEncoding("utf-8");//指定编码格式</span><span style="font-size:18px;">// XMLWriter wr=new XMLWriter(new FileOutputStream("./src/xml/2.xml"), format); // XMLWriter wr=new XMLWriter(System.out, format);//输出的方式不对,直接输出到控制台 XMLWriter wr=new XMLWriter(System.out);//输出的方式不对,直接输出到控制台,但是可以就没有解释 wr.write(dom); wr.close();</span></pre><pre name="code" class="html"><span style="font-size:18px;">/* <span style="white-space:pre"> </span> * 对于两种储存方式,各有好处,但是写到文件一般有的比较多,OutputFormat format=OutputFormat.createPrettyPrint(); <span style="white-space:pre"> </span> * 获得格式后,可以按指定的格式设置,当然也可以改变要写到什么位置才可以。 <span style="white-space:pre"> </span> */ </span> 5.对xml的读写,做了一个工具类

当项目中需要对xml文件操作时,可以采用这个工具。因为要实现共享,所以用到静态块。

package cn.hncu.contact.factory; import java.io.FileOutputStream; import java.io.IOException; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.io.SAXReader; import org.dom4j.io.XMLWriter; public class DomFactory { private static Document dom;//为了让document共享,必须要设置静态的,并且让其放在静态块里面 private static final String FILE_NAME = "./bin/cn/hncu/contact/xml/contact.xml"; static{ try { SAXReader reader = new SAXReader(); dom = reader.read(FILE_NAME); } catch (DocumentException e) { throw new RuntimeException(e.getMessage(), e); } } //获取的文件 public static Document getDocument(){ return dom; } //保存文件 public static void save(){ XMLWriter writer = null; try { writer = new XMLWriter( new FileOutputStream(FILE_NAME) ); writer.write( dom ); } catch (IOException e) { throw new RuntimeException(e.getMessage(), e); }finally{ if(writer!=null){ try { writer.close(); } catch (IOException e) { throw new RuntimeException("关流失败", e); } }} }}

转载请注明原文链接。 文中有不妥或者错误的地方还望指出,以免误人子弟。 再次感谢您耐心的读完本篇文章。 希望大家多指教指教

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • JavaScript转换与解析JSON方法实例详解第1/2页

    JavaScript转换与解析JSON方法实例详解第1/2页

    2016-02-10 21:25

  • JSON Schema 那些事儿:基本概念

    JSON Schema 那些事儿:基本概念

    2016-01-31 10:32

  • 未来编程的9大猜想:JavaScript不必亲自编写

    未来编程的9大猜想:JavaScript不必亲自编写

    2016-01-30 13:01

  • Objective-C与JavaScript交互的那些事

    Objective-C与JavaScript交互的那些事

    2016-01-30 13:00

网友点评
h