关于BufferedReader读取文件指定字符集问题
程序员文章站
2022-03-09 23:12:15
目录bufferedreader读取文件指定字符集问题bufferedreader类读取中文乱码bufferedreader读取文件指定字符集问题默认的读取方式bufferedreader buffe...
bufferedreader读取文件指定字符集问题
默认的读取方式
bufferedreader bufferedreader = new bufferedreader(new filereader(realpath));
指定字符集方式
bufferedreader bufferedreader = new bufferedreader(new inputstreamreader(new fileinputstream(realpath),“utf-8”));
bufferedreader类读取中文乱码
解决方法:
bufferedreader in = new bufferedreader(new filereader(filename, charset.forname("utf-8")));
在new filereader类对象的时候,使用
filereader(string filename, charset charset)
这个构造函数传一个参数指定一下字符集就ok了。原因是不指定字符集的话就会使用默认的字符集(一般是gbk),若与要读取文件的字符集不一致,则即便是字符流也会出现乱码。
字符集获取方法(charset类是不可变类):
charset.forname(string charsetname)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。