由于Android默认的编码方式是utf-8,而好多中文网页编码为GBK2312,因此会出现中文乱码方式。
public static String InputStreamTOString(InputStream in,String encoding) throws Exception{
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
byte[] data = new byte[1024];
int count = -1;
while((count = in.read(data,0,1024)) != -1)
outStream.write(data, 0, count);
data = null;
return new String(outStream.toByteArray(),encoding);
}
通常网页调用
String result = InputStreamTOString(in,“GB2312”) ;
result = new String(result.getBytes("GB2312"),"utf-8");
就可以正常的显示中文了
本文介绍了一种解决Android应用中因网页编码不一致导致的中文乱码问题的方法。通过使用自定义函数InputStreamTOString将输入流转换为指定编码的字符串,并进行编码转换,实现了中文内容的正确显示。
126

被折叠的 条评论
为什么被折叠?



