我在解析一个远程流过来的 xml进行解析,因为jdom sax他占用内存比较少,所以就选了他。
问题: 解析的xml中有中文的时候,他不是一次读取一行内容进行返回的,而是一次一个汉字进行返回的,我就郁闷了, 大神帮忙看下。非常感谢!
补充下:xml 文件保存在本地,然后使用FIleReader进行读取,中文是好的。
代码如下:
@Override
public void characters(char[] ch, int begin, int length) throws SAXException {
StringBuffer buffer = new StringBuffer();
for(int i = begin ; i < begin+length ; i++){
switch(ch[i]){
case '\\':buffer.append("\\\\");break;
case '\r':buffer.append("\\r");break;
case '\n':buffer.append("\\n");break;
case '\t':buffer.append("\\t");break;
case '\"':buffer.append("\\\"");break;
default : buffer.append(ch[i]);
}
}
System.out.println(this.toBlankString(this.frontBlankCount)+
">>> characters("+length+"): "+buffer.toString());
}
输出片段:
>>> characters(1): 不
>>> characters(1): 少
>>> characters(1): 渠
>>> characters(1): 道
>>> characters(1): 推
>>> characters(1): 广
>>> characters(1): 的
>>> characters(1): 力
>>> characters(1): 气
>>> characters(1): ,
>>> characters(1): 阿
>>> characters(1): 里
>>> characters(1): 云
>>> characters(1): 能
>>> characters(1): 帮
>>> characters(1): 助
>>> characters(1): 更
>>> characters(1): 多
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
XML的格式是什么??######结贴,XML格式不正确,将网页下载下来以后用记事本打开中文就是#12311#12311#12311 之类的东西, 好像是unicode 无BOM格式的还是什么的。