Java开源-Jdom对XML解析方法的使用指南
http://java.ccidnet.com/art/3565/20060313/475777_1.html XML的四种解析器原理及性能比较
http://bbs.chinacode.com/archiver/tid-352.html Java XML API 漫谈
http://blog.iyi.cn/user/david/archives/2005/01/204.html使用 dom4j 解析 XML
http://blog.iyi.cn/user/david/archives/2005/01/204.html 用dom4j建立,修改XML文档,并解决格式化输出和中文问题
http://www.5inet.net/WebPrograming/XMLXSL/070556.html 原因分析:
由于FileWriter默认的输出编码是ANSI编码,而Dom4j中的wirte方法提供的内容实际是以UTF-8保存的,因此造成了包括中文字符的XML文件无法正常阅读。
解决方法:
不能使用简单的FileWriter,而应该是使用一个能指定具体输出编码的Writer,在JDK的io包中, OutputStreamWriter可以指定输出编码。
正确的代码如下:
java.io.OutputStream out=new java.io.FileOutputStream(fileName);
java.io.Writer wr=new java.io.OutputStreamWriter(out,"UTF-8");
doc.write(wr);
wr.close();
out.close();
简化一下可以写成下面的样式:
java.io.Writer wr=new java.io.OutputStreamWriter(new java.io.FileOutputStream(fileName),"UTF-8");
doc.write(wr);
wr.close();