您的位置:首页 > 其它

使用JDOM输入XML到硬盘的时候,为其设置编码

2009-04-21 15:44 197 查看
如果不为其设置,将会默认编码为utf-8,并且不会换行等,生成的XML就会不美观,在网上搜索了,原到有采用这样设置编码的:

Document   doc   =   ...   //内存中已构造好的jdom   Document对象   
  XMLOutputter   output   =   new   XMLOutputter(2,   true,   "GB2312");   
  //   2   是指缩进2个字符,   true表示用换行,---增强可读性   
  FileOutputStream   out   =   new   FileOutputStream(fileName);   
  output.output(doc,   out);


我看了一下贴子的时间,是2002年,有可能那个时候JDOM还支持这个构造方法,现在我看已经没有了,他已经将这一块功能给剥离了出来,形成了Format,所有的设置都在该类当中处理,这样设置:

XMLOutputter out;
Format format = Format.getCompactFormat();
format.setEncoding("gb2312");
format.setIndent("     ");
out = new XMLOutputter(format);
out.output(xmlDoc, new FileOutputStream("xml文件路径"));


setEncoding就是设置编码了

setIndent是设置分隔附的意思,一般都是用空格,就是当你新节点后,自动换行并缩进,有层次感,如果这样写setIndent(""),就只有换行功能,而不会缩进了,如果写成setIndent(null),这样就即不换行也不缩进,全部以一行显示了,默认的就是这样的效果,不好看得。



本文出自:冯立彬的博客
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: