用Java 出现了这样的一个问题?好几天都没解决掉
然后最近一直找资料
截个图:
本来格式中时没有这个?号的,代码里面用GBK和utf-8都不能解决。
即使我加了 Str.trim(Str)去除 字符串的空格符 也是没用
然后用另外一个方法解决,把文件(这里是记事本格式)转化成ASSIC格式。
然后用GBK 编码格式读文件就正常了。
读取文件代码。
String encoding="GBK"; File file=new File(filePath); if(file.isFile() && file.exists()){ //判断文件是否存在 InputStreamReader read = new InputStreamReader(new FileInputStream(file),encoding);//考虑到编码格式 BufferedReader bufferedReader = new BufferedReader(read);
但是为什么我读取的编码会有一个?号呢,而且我们打开文件的时候并不可见。
目前没找到原因,我打开该文件的16进制也没发现有什么问题。
应该是记事本打开时默认了utf-8格式,所以还是建议用一些格式文件打开比较好,比如utral