首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

中文字符乱码有关问题

2012-11-03 
中文字符乱码问题忙了半天终于把中文字符乱码问题解决了。下面跟大家分享一下吧。情况一:问题描述:HttpURLCo

中文字符乱码问题
  忙了半天终于把中文字符乱码问题解决了。下面跟大家分享一下吧。
  情况一:
  问题描述:HttpURLConnection去请求一个xml文件并解析xml文件内容。每次解析出来xml中的中文都是乱码。这肯定是字符集编码不统一的问题。解决这个问题主要从一下步骤来。
  1. 检查你xml文件的编码格式。(确定xml的编码格式,这个很重要,因为这个决定了你请求到xml内容后采用的编码格式,不相同的话可能会有乱码)
  2. 知道了xml的编码格式后,就好办了。如下:
 

HttpURLConnection urlConn = (HttpURLConnection)url.openConnection();// 将资源读到inputsream中inputStream = urlConn.getInputStream();BufferedReader buf = new BufferedReader(new InputStreamReader(inputStream,"UTF-8"));// 创建UTF-8的BufferedReadertry {while((line = buf.readLine())!=null){sb.append(line);}} catch (IOException e) {e.printStackTrace();}finally{try {inputStream.close();} catch (IOException e) {e.printStackTrace();}}

  情况二:
  问题描述:当你在url中想请求一个带中文名的文件时。你需要修改tomcat的配置,因为tomcat默认编码是不支持中文的。配置修改如下:
 
<Connector port="8080" protocol="HTTP/1.1"                connectionTimeout="20000"                redirectPort="8443"   [color=red]URIEncoding="UTF-8"[/color]/>

  另外,你在使用URL url = new URL(str)的时候,这里是用传过来的str直接创建url,但是要注意一点,这里这里是不支持中文字符的,所以你要采用URLEncode的encode方法来将中文字符转换成url接受的字符。
  好了,就到这里吧。

另外,你在使用URL url = new URL(str)的时候,这里是用传过来的str直接创建url,但是要注意一点,这里这里是不支持中文字符的,所以你要采用URLEncode的encode方法来将中文字符转换成url接受的字符。
  好了,就到这里吧。

问题就是这个。你只是简单的说下,怎么才可以访问含中文的url呢。我想下载MP3
。名字是有何不可.mp3.
在执行HttpURLConnection con = (HttpURLConnection) url.openConnection(); 这句话还是正确的可是一执行到InputStream is = con.getInputStream();就报错,找不到该url,很是郁闷、求解?

另外,你在使用URL url = new URL(str)的时候,这里是用传过来的str直接创建url,但是要注意一点,这里这里是不支持中文字符的,所以你要采用URLEncode的encode方法来将中文字符转换成url接受的字符。
  好了,就到这里吧。

问题就是这个。你只是简单的说下,怎么才可以访问含中文的url呢。我想下载MP3
。名字是有何不可.mp3.
在执行HttpURLConnection con = (HttpURLConnection) url.openConnection(); 这句话还是正确的可是一执行到InputStream is = con.getInputStream();就报错,找不到该url,很是郁闷、求解?
告诉你一个很简单的调试方法,如果你的url中有中文的话,在HttpURLConnection con = (HttpURLConnection) url.openConnection()之前,先将你的URL encode一下,接着打印出来看看,然后在浏览器中贴上这个地址(这样就是去访问你的MP3文件了),你看看能不能访问到,如果能的话,就说明没有问题。

热点排行