BufferedReader类读取中文乱码
BufferedReader类读取中文乱码
解决方法:
1 | BufferedReader in = new BufferedReader(new FileReader(filename, Charset.forName("utf-8"))); |
在new FileReader类对象的时候,使用
1 | FileReader(String fileName, Charset charset) |
这个构造函数传一个参数指定一下字符集就OK了。原因是不指定字符集的话就会使用默认的字符集(一般是GBK),若与要读取文件的字符集不一致,则即便是字符流也会出现乱码。
字符集获取方法(Charset类是不可变类):
1 | Charset.forName(String charsetName) |
参考资料:
java里面字符集和Charset类
Java 解決BufferedReader读取UTF-8文件中文乱码
likeqc
ends
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Hi, likeqc!
评论