Java 使用流读文本数据时乱码 解决方法
发布日期:2021-05-09 04:15:37 浏览次数:17 分类:博客文章

本文共 417 字,大约阅读时间需要 1 分钟。

一、问题描述

  当我使用FileReader读取文本文件里的汉字时,读出来的是乱码。但为什么字符是正常的呢???

二、原因探究

  其根本原因在于编码标准不同。汉字采用gbk,而idea使用UTF-8。gbk编码中文是2个字节,UTF-8编码是3个字节代表一个字符,read读到的是一个字节,一个中文,当然就读半个字节了,不完全当然是乱码了。

三、解决方法

  将FileReader改用FileInputStream读取文件,就OK啦:

InputStreamReader reader = new InputStreamReader(new FileInputStream(filepath), "GBK");BufferedReader br = new BufferedReader(reader); String line; while ((line = br.readLine()) != null) { //。。。 }
上一篇:测试行业13问
下一篇:2019秋招笔试编程题 膨胀的牛牛

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2025年05月04日 21时42分08秒