您的位置:首页 > 编程语言 > Java开发

java io读取文件乱码解决办法

2017-07-22 13:45 1066 查看
程序运行结果会有部分出入,原因是代码有一点点的小问题,懒得改了,可以参考这里:点击打开链接

读取文件的代码【java默认编码是:utf-8】:

public class FileTest02 {
public static void main(String[] args) throws IOException {
/*
* 使用BufferdReader进行读取文件操作
*/

File file = new File("E:/data.txt");

/*
* 第一种
*/
BufferedReader br1 =new BufferedReader(new FileReader(file));
while((br1.readLine() != null)){
System.out.println(br1.readLine());
}

/*
* 第二种
*/
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(file)));
while(br.readLine()!=null){
System.out.println(br.readLine());
}
}
}


原始文本数据【编码是 ANSI】:



程序运行结果:



怎么办呢?

提供两种解决办法

一:修改源代码,在源代码中加入编码。如下

/*
*   第二种
*/
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(file),"gbk"));
while(br.readLine()!=null){
System.out.println(br.readLine());
}


这部分代码是通过 InputStreamReader 进行操作的。 字符流与字节流的桥梁。 对于上面的第一种方式读取文件的代码,我不知道怎么改。初学者!

运行结果:



二:修改文本文件的编码

我是利用editplus讲文本文件的编码修改成 utf-8. 



运行结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: