Java基础学习三---IO流

本文介绍了Java中FileWriter类的使用,包括创建字符流输入输出、写入内容及异常处理。还讨论了换行符的不同系统表示,并提到了FileReader类用于字符输入流的操作。同时,解释了BufferedWriter和BufferedReader如何提升效率,特别是它们的换行方法和关闭流的方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

FileWirter类    ->    字符流输入输出,只能读写纯文本格式(笔记本notebook能打开的东西)。

创建步骤。

1)    import java.io.FileWriter;    导包

2)    FileWriter fw = new FileWriter("name.txt");   (name 为文件名称,若文件未被创建,则自动生成一个新文件)。

3)    fw.write(参数);    写入东西。    参数可以为int  String char[]

4)    fw.close();    关闭流,释放资源。


注意:   

1)    new FileWriter("name.txt") 中,若文件已存在,则写入内容覆盖之前所有内容。如果不想覆盖而是接着写入内容,则使用new FileWriter("name.txt", true); 来创建对象。 

2)    IO流需要考虑异常,暂时可以在方法后写 throws IOException 告诉电脑遇到此类IO异常,不处理。


换行符:

windows:        \r\n

macOS:            \n

Linux:               \n


ASCII码表:

48代表0

65代表A

97代表a


FileReader类    ->    字符输入流

1)  import java.io.Reader    导包

2)    FileReader fr = new FileReader("fileXxx.txt");        创建对象

3)    fr.read();    读入数据

4)    fr.close();    关闭


读取技巧:

 1)            int ch;

                while ((ch = fr.read()) != -1) {
System.out.println((char)ch);

}

2)            System.out.println((char)ch);

3)            public int read(char[] buf)    一次读取多个字符数组的数据。

4             一次读取多个字符数组的标准格式。

int len;                                  

while((len = fr.read(buf))!=-1) {
String str = new String(buf,0,len);
System.out.println(str);
}

由于硬盘读写速度很慢,所以尽量一次操作多个字符来达到提高效率的目的。

BufferedWirter和BufferedReader 相比较于FileWriter和FileReader, 它有一个长度为8192的char[]字符数组作为缓存。

BufferedWirter操作步骤:

FileWriter fw = new FileWriter("name.txt");

BufferedWriter bw = new BufferedWriter(fw);

简化可以写成:BufferedWriter bw = new BufferedWriter(FileWriter("name.txt"));

后续操作与之前FileWriter 完全一致。

最后使用 bw.close(); 将两个writer 一同关闭。

BufferedWriter 另外一种换行方式(除了"\r\n,\n"):    public void newLine();

example':     bw.newLine(); 根据不同系统 自动选择换行。推荐只用这种方式换行。


new BufferedRead(FileReader);

剩下都一样。

br.readLine();        读取一行。return的是String 字符串。若没有下一行了 则return null。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值