【java小知识】FileReader读取文件出现乱码的解决办法
转1:https://blog.csdn.net/a532672728/article/details/79432619
转2:https://www.cnblogs.com/qq78292959/p/3794993.html
小结:
1)注意txt文件,保存的格式,Windows的记事本默认保存的ANSI,我们要让它保存成UFT-8格式;
2)问题出在FileReader读取文件的过程中,FileReader继承了InputStreamReader,但并没有实现父类中带字符集参数的构造函数,所以FileReader只能按系统默认的字符集来解码,然后在UTF-8 -> GBK -> UTF-8的过程中编码出现损失,造成结果不能还原最初的字符。
原因明确了,这个问题解决起来并不困难,用InputStreamReader代替FileReader,InputStreamReader isr=new InputStreamReader(new FileInputStream(fileName),"UTF-8");这样读取文件就会直接用UTF-8解码,不用再做编码转换。
List<String> lines=new ArrayList<String>(); // 方法一 BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream("d:/test.txt"),"UTF-8")); String line = null; while ((line = br.readLine()) != null) {lines.add(line); }
转载于:https://www.cnblogs.com/huangyan246/p/10566857.html
【java小知识】FileReader读取文件出现乱码的解决办法相关推荐
- PyQt5随笔:PyQt5 程序在开机自启动时读取文件出错导致崩溃解决办法
PyQt5随笔:PyQt5 程序在开机自启动时读取文件出错导致崩溃解决办法 1.前言 最近在写一个 Python+pyqt5 小项目,在改善过程中想添加一个日志记录,我是打算用txt 文件记录就好,操 ...
- Excel打开csv文件出现乱码的解决办法
excel打开是乱码怎么办?该如何解决呢?打开excel遇到乱码也是很常见的现象. excel打开是乱码的解决办法: 1.Excel打开一个csv格式的文档,出现乱码; 2.有乱码的 CSV 档透过记 ...
- 在CentOS上解压含有中文名的ZIP文件出现乱码的解决办法
CentOS7下通过yum安装p7zip 现象 云ECS主机上,没有装p7zip,然后通过yum安装,发现也没有这样包.再仔细检查了下,发现本机环境中,没有启用epel源,致使通过yum无法安装p7z ...
- c#读取Sybase中文乱码的解决办法
最近需要从Sybase数据库中获取数据.用Sybase.Data.AseClient连接的话比较简单,但中文数据会有乱码.用Sybase自带的工具SQL Advantage设置好编码和语言,是可以正常 ...
- 解决fileReader读取文件乱码
解决fileReader读取文件乱码 idea默认编码格式是utf-8(标准万国码的一种),而Windows操作系统默认是GBK(中文码表),如果fileReader读取系统中的文件,则无法将字节转换 ...
- 客户读取文件服务器上文件的过程,java从服务器上读取文件
java从服务器上读取文件 [2021-02-03 06:36:28] 简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace("/ ...
- java小兔跳铃铛,Java小知识 - 顾小兔2018的个人空间 - OSCHINA - 中文开源技术交流社区...
Java小知识 [TOC] (1)三种读取文件方法 URL url = this.getClass ().getResource ("/a.txt"); Resources.asC ...
- FileReader读取文件的三种方式
#日常练习 FileReader可以通过一次读取文件中一个字符,一次读取一个字符数组或使用缓冲区这三种方式来读取文件 备注:使用缓冲区的方式的内部实现是借助数组完成 package IO;import ...
- java 使用相对路径读取文件
java 使用相对路径读取文件 1.java project环境,使用java.io用相对路径读取文件的例子: *目录结构: DecisionTree |___src ...
最新文章
- Webpack 4 api 了解与使用
- 图的深度搜索c语言,求图的深度优先搜索!该怎么处理
- 基础篇:事件的发送和处理
- 在Qt中用默认程序打开文件
- ORB-SLAM2源代码中ROS部分ros-mono源代码中subscribe /camera/image_raw topic谁发布publish的
- tensorflow2.0 GPU 版本安装测试教程及新特性初探
- 用python实现打开虚拟机_如何使用python从虚拟机读取文件
- JDBC基本知识总结概括及8个阶段优化过程:
- 华为首秀 AI 全栈软件平台!
- matlab y轴旋转面,Mayavi:绕y轴旋转
- Ubuntu 汉化及kate汉化和使用自带终端的解决方式
- 「解决方案」5G基站电气监控云平台
- 学习笔记(01):2019软考网络工程师--基础知识视频教程-数据通信基础(一)
- 潜伏多年的中文编程语言该不该发展起来(科技无国界,呵呵)
- Xshell下载安装(解决评估过期问题)
- Object 的 equal() 、hashCode()方法说起
- 口布杯花的60种叠法_杯花折叠方法
- 接口分析--腾讯软件中心应用信息接口
- 三星nfc添加门禁卡实测有效_小米的NFC功能到底有多强大?看完折服!
- 关于电容器的泄漏电流
热门文章
- MySQL计算表行数_计算MySQL表中行数的最快方法?
- 腾讯的老照片修复算法,我把它搬到网上,随便玩
- Linux C 中断言assert()使用简介
- java基础集合简介Map(三)下
- 将一个BYTE数组转换成16进制字符串和10进制字符串格式
- 前端学习(3346):设计模式之工厂模式3
- React开发(163):React中this.props.children
- Taro+react开发(4)--tora官网2
- [html] iOS下页面如何启动加载时显示画面图片?如何设置大小?它有什么好处?
- 手动封装js的call和apply和bind和typeof和new方法