dom4j中如何自动转换编码呢?

Andy84920 2011-09-23 07:59:12
如我的文件内容是 GB18030编码的,但我的程序中运行在UTF8的环境里,这样取出来的值打印出来都是乱码的。

那有没有办法在dom4j中的Document自动转成UTF8的呢?
...全文
136 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
dxqrr 2011-09-25
  • 打赏
  • 举报
回复
mark
coooliang 2011-09-25
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 huntor 的回复:]
Java code

InputStream input = ...;
Document document = saxreader.read(new InputStreamReader(input,"GB18030"));
[/Quote]
学习!
guoyang842 2011-09-24
  • 打赏
  • 举报
回复
回帖加分
softroad 2011-09-24
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 huntor 的回复:]

Java code
InputStream input = ...;
Document document = saxreader.read(new InputStreamReader(input,"GB18030"));
[/Quote]

+1
niuniu20008 2011-09-24
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 huntor 的回复:]
Java code
InputStream input = ...;
Document document = saxreader.read(new InputStreamReader(input,"GB18030"));
[/Quote]
+
huntor 2011-09-23
  • 打赏
  • 举报
回复
InputStream input = ...;
Document document = saxreader.read(new InputStreamReader(input,"GB18030"));
liyang1271989 2011-09-23
  • 打赏
  • 举报
回复
/**
* 格式化XML文档
*
* @param document xml文档
* @param charset 字符串的编码
* @return 格式化后XML字符串
*/
public static String formatXML(Document document, String charset) {
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding(charset);
StringWriter sw = new StringWriter();
XMLWriter xw = new XMLWriter(sw, format);
try {
xw.write(document);
xw.flush();
xw.close();
} catch (IOException e) {
log.error("格式化XML文档发生异常,请检查!", e);
}
return sw.toString();
}

你可以随意指定编码,但是你调用之前必须保证你的字符串编码和这里参数的编码一致,这样才是正确的调用。

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧