您的位置:首页 > 其它

XStream反序列化xml时遇到汉字乱码问题

2014-05-12 21:10 531 查看
最近在做项目的过程中使用到xstream 技术来实现javabean 和xml之间相互转换。

不说废话,对于xstream的学习,在官网进行一步一步的学习,就可以学会,但是还有一部分问题是会在实践过程中会遇到的。

比如汉字乱码问题.

解决方法:

File file= new File("F://back.xml");

InputStreamReader in = null;

String xml = null;

try {

//主要就是这里的设置

in = new InputStreamReader(new FileInputStream(file),Charset.forName("gbk") );

StringBuffer sb = new StringBuffer();

char[] array= new char[1024];

int length = -1;

while((length=in.read(array))!= -1){

sb.append(array, 0, length);

}

in.close();

xml=sb.toString().trim();

System.out.println(xml);

} catch (Exception e) {

// TODO: handle exception

}

XStream xstream = null;

xstream = new XStream( new DomDriver());

xstream.processAnnotations(ResultCallBack.class);

xstream.autodetectAnnotations(true);

ResultCallBack result=(ResultCallBack) xstream.fromXML(xml);

System.out.println(result.getB2bDocumentsId()+"----"+result.getMsg());
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: