java读取文件中文乱码,java打开文件乱码问题
如何解决写爬虫IP受阻的问题?立即使用。
用java读取磁盘文件内容容易出现乱码。问题是由java使用的代码和读取文件的代码不一致引起的。(推荐:java视频教程)
假设有一个test.txt的文本文件,内容为:“测试java读取中文字符串乱码”,其中包含中文,文件的编码格式为GBK。如果我们使用的java平台默认代码是UTF-8。
可使用
system . out . println(charset . default charset());打印视图
那么当我们在没有指定编码的情况下读取文件的内容时,结果将会是乱码。
string path= C:\ \ Users \ \ macro \ \ Desktop \ \ test . txt ;
FileReader FileReader=new FileReader(路径);
char[]chars=new char[1024];
字符串内容=“”;
while(file reader . read(chars)0){
content=新字符串(字符);
}
System.out.println(内容);结果
但是Java IO系统的Reader系列中的FileReader没有办法指定代码,而FileReader的父类InputStreamReader可以指定代码,所以我们可以用它来解决乱码问题。
string path= C:\ \ Users \ \ macro \ \ Desktop \ \ test . txt ;
file inputstream fis=new file inputstream(path);
InputStreamReader InputStreamReader=new InputStreamReader(fis, GBK );
char[]chars=new char[1024];
字符串内容=“”;
while(inputstreamreader . read(chars)0){
content=新字符串(字符);
}
System.out.println(内容);结果
通过使用InputStreamReader而不是FileReader,并在构造函数中指定GBK编码来读取FileInputStream的内容,可以打印出正确的结果。
更多java知识,请关注java基础课程专栏。这就是java解决乱码文件的细节。请多关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。