Android解决TextView setText显示乱码

TextView在setText会因为编码的问题出现乱码的情况,以下是一些解决方案的记录。

1.在程序中对组件setText出现中文乱码,统一为UTF-8也没解决这个问题。

2.在build.gradle文件下添加了android{compileOptions.encoding="GBK"}

3.因为我遇到的问题是读写文件后setText乱码的问题,是由byte转成String字符串时出现乱码,最终可行有效的解决方案如下:

//打开文件输入流
            FileInputStream inputStream = new FileInputStream(filename);
            byte[] buffer = new byte[1024];
            int len = inputStream.read(buffer);
            //读取文件内容
            while(len > 0){
                sb.append(new String(buffer,0,len));
                //继续将数据放到buffer中
                len = inputStream.read(buffer);
            }
            //关闭输入流
            inputStream.close();

将本段代码中的

byte[] buffer = new byte[1024];

修改为

byte[] buffer = new byte[inputStream.available()];

 

你可能感兴趣的:(问题小结,android,UI,Android开发,Android学习之路)