dom4j操作xml时的乱码与格式化

Dom4j是一个易用的、开源的库,用于XML,XPath和XSLT。它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JAXP。(Hibernate用此项目来解析hbm映射文件)


下面的 java代码演示如何写xml文件
  

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;

/**
* @Copyright @ 2012 All right reserved
* @version 创建时间:Created on 2012-12-20
* @author 作者:Create by www.360buyli.com
* @Email: 360buyli@gmail.com
* @description 用于操作xml
*/

public class XmlUtil {
public void generateDocument() {
  Document document = DocumentHelper.createDocument();
  Element catalogElement = document.addElement("catalog");
  catalogElement.addComment("An XML Catalog");
  catalogElement.addProcessingInstruction("target", "text");
  Element journalElement = catalogElement.addElement("student");
  journalElement.addAttribute("stuName", "张三");
  Element clsElement=journalElement.addElement("class");
  clsElement.addAttribute("claName","电气一班");
  document.addDocType("catalog", null, "file://c:/Dtds/catalog.dtd");
  try {
     OutputFormat format = OutputFormat.createPrettyPrint();
        format.setEncoding("GB2312");
       XMLWriter output = new XMLWriter(new FileWriter(new File("c:/catalog.xml")),format);

   output.write(document);
   output.close();
  } catch (IOException e) {
   System.out.println(e.getMessage());
  }
}

public static void main(String[] argv) {
  XmlUtil dom4j = new XmlUtil();
  dom4j.generateDocument();
}

}

往往操作文件并不是实现本身,而是在操作文本是碰到的乱码问题。操作xml这样的文本文件同样会存在乱码问题。刚开始没有加红色加粗部分时,写出来的xml文件完全是没有格式化的,还是就是中文乱码。从类的命名,可以看出这个处理对输入的格式化。后面的设置编码也正好解决了乱码的问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值