首先提示一下,一般网站的返回编码都为UTF-8。
而在实际过程中,有时候返回的中文乱码导致迷茫,到底这个是什么编码格式呢?
可以采取以下方式确定,将返回的html代码保存成文件,代码参考如下:
BufferedReader reader_post = new BufferedReader(new InputStreamReader(
conn_post.getInputStream(),"GB2312"));
File fp = new File(context.getFilesDir().getAbsolutePath()+"a.txt");// 获取整个返回的HTML代码并写入a.txt
PrintWriter pfp= new PrintWriter(fp);
pfp.print(res_post);
pfp.close();
之后再eclipse里面的某个工程里面导入该文件,设置项目属性,改变编码格式,看实际得到的是哪类编码。
在我这里,发现虽然用了GB2312格式,但是实际上用UTF-8编码格式才能正常显示。
所以正确的返回编码实际上市UTF-8。
另外发现InputStreamReader的编码格式第2个参数大小写敏感,使用GBK与gbk返回不一致,使用大写的返回也是UTF-8,小写的则返回乱码,哪类格式打开都是乱码。