android客户端从SDcard的txt文件,或者从windows系统下载的txt文件中读取中文常常会乱码,这是因为其中的中文采用ANSI编码方式,而android系统只能显示UTF-8编码的字符,所以大肆搜索网络以后,得出两个粗糙的解决方法。
一 直接手动修改资源文件的编码方式
直接将文件以记事本打开,点击文件选项,另存为:
在编码处改为utf-8,然后保存到需要的路径即可顺利读取。
二 读写的时候添加编码格式
使用流读取的时候加入相对应的编码格式 如:中文“GB2312”
BufferedReader br=new BufferedReader(new InputStreamReader(
getResources().openRawResource(R.raw.test),"GB2312"
));
打印的时候也构建 utf-8的编码字符串
new String(br.readLine().getBytes(),"UTF-8")