Java的乱码问题真是烦死人,实在搞不定,只能上网找高手赐教!如题。
需解析的XML流文件为:
<?xml version="1.0" encoding="UTF-8" ?> 
<data>
 <wfdm>
  <date>8/17/2006 0:0:0</date> 
  <hash>加速度罚款</hash> 
 </wfdm>
</data>
解析的函数方法:
response.setCharacterEncoding("UTF-8");
request.setCharacterEncoding("UTF-8");
URL u = new URL(url);
SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(u);
Element foo = doc.getRootElement();
List allChildren = foo.getChildren();
String date = ((Element) allChildren.get(i)).getChild("date").getText();
String hash = ((Element) allChildren.get(i)).getChild("hash").getText();但是取出来的hash 值是乱码,请赐教!!

解决方案 »

  1.   

    将得到的 date  用 a.getBytes("gb2312");弄下
    如果 gb2312 不行 换 其他的 编码!
      

  2.   

    response.setCharacterEncoding("GB2312");
    request.setCharacterEncoding("GB2312");<?xml version="1.0" encoding="GB2312" ?> 如果这样还不行,且你使用的是tomcat服务器,可以加个过滤器。
    如果你的值是通过get传递的,那么还需要修改tomcat。
    可以参考下面的文章:解决web开发中的中文问题
    http://www.blogjava.net/rickhunter/articles/33571.html
      

  3.   


    已经加了过虑器,过虑为UTF-8UTF-8为什么不行??