← 回到文章列表

关于JOX转换Bean时乱码解决

最近有用到jox工具类 这个类的主要功能就是将xml和javabean对象互相转换 但是早上碰到一个问题 将xml转换成bean之后中文乱码 网上疯找发现全都是bean转xml乱码解决 那么这里就提一下解决方式好了 在避免修改工具类代码的情况下 将stream先编码再调用jox即…

最近有用到jox工具类
这个类的主要功能就是将xml和javabean对象互相转换
但是早上碰到一个问题
将xml转换成bean之后中文乱码
网上疯找发现全都是bean转xml乱码解决
那么这里就提一下解决方式好了
在避免修改工具类代码的情况下
将stream先编码再调用jox即可避免乱码产生

    public void xmlJOX(String xmlDoc){
        try{ 
//        	xmlDoc = new String(xmlDoc.getBytes("ISO-8859-1"), "GBK");
//        	ByteArrayInputStream stream = new ByteArrayInputStream(xmlDoc.getBytes("GBK"));
        	ByteArrayInputStream stream = new ByteArrayInputStream(xmlDoc.getBytes("ISO-8859-1"));
            JOXBeanInputStream joxIn = new JOXBeanInputStream(stream); 
            GameChargeResponse gcr = (GameChargeResponse) joxIn.readObject(GameChargeResponse.class); 
            System.out.println(gcr); 
        } 
        catch (Exception exc){ 
	            exc.printStackTrace(); 
	        } 
    } 

顺便给出bean转xml乱码解决方式:

JOXBeanOutputStream joxOut =new JOXBeanOutputStream(fileOut,"UTF-8");

在这里找找

输入关键词,找一篇过去的记录。