java读取xml中文乱码

xml是用utf-8编码<?xml version="1.0" encoding="UTF-8"?>。通过dom4j读取xml,用了
SAXReader reader = new SAXReader();
Document doc = reader.read(new ByteArrayInputStream(xmlContent.getBytes("UTF-8")));
中文显示为乱码,请问怎么解决啊。

2个回答

BufferedReader

别用这个,用BufferedInputStream。

直接
[code="java"]reader.read(new BufferedInputStream(new FileInputStream('xxx.xml')));[/code]

总之把字节流给到dom4j就可以了,不用去管编码。

[code="java"]reader.read(new FileInputStream(new File("xxx.xml")))[/code]这样吧 好像不需要指定编码的,dom4j中会自动转换,指定了编码反而会坏事,具体为什么没有深究过。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐