FileReader与FileWriter
分别继承于InputStreamReader OutputStreamWriter
所以:
FileReader:new FileReader(“d:/back/string.txt”) =
new InputStreamReader(new FileInputStream(“d:/back/string.txt”));
FileWriter:new FileWriter(“d:/back/string.txt”) =
new OutputStreamWriter(new FileOutputStream(“d:/back/string.txt”));
1.在使用FileReader 对象进行文件输入操作的时,JVM先读取本地文本文,然后将其格式转化为Unicode编码格式进行操作。
再用FileWriter进行文本文件输出时则把Unicode编码格式再转换成本地(本地主机上)的编码格式(如ASCII或者GBK等)。
2.FileReader与FileWriter两个类和FileInputStream和FileOutputStream两个类的操作方法基本相同,只不过前者基于字符,
后者基于字节(byte),若操作的文件不是文本文件,则建议使用FileInputStream和FileOutputStream进行文件的输入输出。
FileReader(File file) 在给定从中读取数据的 File 的情况下创建一个新FileReader。 |
FileReader(FileDescriptor fd) 在给定从中读取数据的 FileDescriptor 的情况下创建一个新 FileReader。 |
FileReader(String fileName) 在给定从中读取数据的文件名的情况下创建一个新FileReader。 |
void |
close() 关闭该流并释放与之关联的所有资源。 |
String |
getEncoding() 返回此流使用的字符编码的名称。 |
int |
read() 读取单个字符。返回值为读入字符对应的int值(0~65535) |
int |
read(char[] cbuf, int offset, int length) 将字符读入数组中的某一部分。返回值为读入字符个数 |
boolean |
ready() 判断此流是否已经准备好用于读取。返回值为读入字符个数 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
注:特别注意的是 FileWriter(File file) file文件原来内容会被清空 如果只是续写 则用FileWriter(File file,Boolean true)
FileReader与FileWriter的更多相关文章
- FileReader和FileWriter
FileReader和FileWriter 使用fileoutputstream类向文件写入数据与使用fileinputstream类从文件中将内容读取出来,存在不足,就是中文占两个字节, 搞不好就会 ...
- java中OutputStream字节流与字符流InputStreamReader 每一种基本IO流BufferedOutputStream,FileInputStream,FileOutputStream,BufferedInputStream,BufferedReader,BufferedWriter,FileInputStream,FileReader,FileWriter,InputStr
BufferedOutputStream,FileInputStream,FileOutputStream,BufferedInputStream,BufferedReader,BufferedWri ...
- (19)IO流之字符流FileReader和FileWriter,缓冲字符流---缓冲输入字符流BufferedReader和缓冲输出字符流BufferedWriter
字符流,读取的文件是字符的时候,有两个基类一个是Reader,一个是Writer这有点拟人的感觉,人直接看懂的是文字 字符流 字节流:读取的是文件中的二进制字节流并不会帮你转换成看的懂得字符 字符流: ...
- mac下CSV文件用FileReader、FileWriter读写乱码
先说下windows的excel文件搬到mac下打开为什么会显示乱码. 在win下,excel采用GBK编码,1个汉字是存为2个字节,而mac下各种软件广泛默认使用UTF-8编码方式,如在e ...
- Java-IO之FileReader和FileWriter
FileReader是用于读取字符流的类,它继承于InputStreamReader,要读取原始字节流,考虑使用FileInputStream:FileWriter是用于写入字符流的类,继承于Outp ...
- [十八]JavaIO之FileReader 和 FileWriter
简介 FileReader FileWriter 都是提供操作文件的便捷类 这两个类的实现非常的简单 原理 回忆下之前的InputStreamReader和OutputStreamWriter Inp ...
- java io系列22之 FileReader和FileWriter
FileReader 是用于读取字符流的类,它继承于InputStreamReader.要读取原始字节流,请考虑使用 FileInputStream.FileWriter 是用于写入字符流的类,它继承 ...
- J04-Java IO流总结四 《 FileReader和FileWriter 》
FileReader和FileWriter的源码相对简单,下面通过分析它们的源码以更好地进行理解这两个流 1. FileReader FileReader实现了读取底层的字节数据并将其转换为字符数据的 ...
- 使用FileReader与FileWriter读写数据
-------------siwuxie095 工程名:TestFileRW 包名:com.siwuxie095.filerw 类名:FileReade ...
随机推荐
- JDBC-防止SQL注入问题
String sql = "select * from user where name = '" + name + "' and password = '" ...
- LNMP一键安装包开启pathinfo和rewrite模式
此教程适用于集成安装包lnmp,官网是https://lnmp.org/ 一. 开启pathinfo #注释 下面这一行 #include enable-php.conf #载入新的配置文件 incl ...
- BZOJ 4244: 邮戳拉力赛
转化为括号序列DP 注意边界 #include<cstdio> #include<algorithm> #define rep(i,x,y) for (int i=x; i&l ...
- RQNOJ:PID30 / [stupid]愚蠢的矿工☆(树形背包)
PID30 / [stupid]愚蠢的矿工☆ 背景 Stupid 家族得知在HYC家的后花园里的中央花坛处,向北走3步,向西走3步,再向北走3步,向东走3步,再向北走6步,向东走3步,向南走12步,再 ...
- day03_06 变量详解
print ("hello world") print("alex") print("jinxing") print("3乘以4= ...
- matlab 画图进阶
matlab 画图进阶 applications of matlab in engineering 图表类型的选择 first:advanced 2d plots special plots logl ...
- Leetcode 474.一和零
一和零 在计算机界中,我们总是追求用有限的资源获取最大的收益. 现在,假设你分别支配着 m 个 0 和 n 个 1.另外,还有一个仅包含 0 和 1 字符串的数组. 你的任务是使用给定的 m 个 0 ...
- DS博客作业05——树
1.本周学习总结 1.1思维导图 1.2学习体会 学习:相比于之前的数据结构,树多了很多性质,相应的也多了很多计算题,不得不说,专有名词也是颇多.觉得树最独特的地方就是它的兄弟.孩子结点,用以组成了它 ...
- Android内存使用——垃圾回收LOG,GC_CONCURRENT等的意义的说明
在调试程序的时候,经常发现GC_CONCURRENT之类的打印.在网上搜了一下,感觉说法各式各样.最后,在Google的官方网站上发现了详细介绍. Every time a garbage colle ...
- oracle查询包含大小写的数据
查询包含小写的所有数据: select oper_no from info_oper where regexp_like(oper_no,'[[:lower:]]'); select oper_no ...