如何快速使用IO流?

本文详细解析了数据流操作的基本概念,包括如何定义源和目的,以及如何根据数据类型选择合适的流进行操作。通过具体实例介绍了如何实现文本文件的复制等常见任务。

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

                                                                 如何理解源和目的?

1.   源:键盘录入。

      目的:控制台。

2.  需求:比如想把键盘数据存储到一个文件中。

     那么它的源就是  键盘,目的就是  文件。

3.  需求:比如想将一个文件的数据打印在控制台上。

     源:文件, 目的:控制台。

---------------------------------------------------------------------------------------------------------------

流操作的基本规律:

在使用流当中最痛苦的无非就是流对象很多,不知道使用哪一个?

我们通过两个明确来完成。

1.  明确源和目的。

            源:输入流。    InputStream        Reader

            目的:输出流    OutputStream     Writer

2.  操作的数据是否是纯文本。

             是。字符流;

             不是。字节流。

3.  当体系明确后,再明确要使用哪个具体的对象。

              通过设备来进行区分:

              源设备:内存、硬盘、键盘。

              目的设备:内存、硬盘、控制台。

-------------------------------------------------------------------------------------------------------------------------

比如:

1.  将一个文本文件中的数据存储到另一个文件当中--------------------复制文件

               源:因为是源,所以使用读取流。    InputStream   Reader

               接下来考虑是不是操作文本文件?

               是!这时可以使用Reader。                       这样体系就明确了。


      接下来明确要使用该体系中的哪个对象。

               明确设备:硬盘上的一个文件。

               Reader体系中可以操作文件的对象是  FileReader

               考虑是否需要提高效率?

                     是!加入Reader体系中缓冲区  BufferedReader

                                  FileReader fr = new FileReader("a.txt");

                                  BufferedReader bufr = new BufferedReader(fr);


               目的:OutputStream     Writer

               是否纯文本?

                    是! Writer

                设备:硬盘上的一个文件。

      Writer体系中可以操作文件的对象FileWriter。

              考虑是否提高效率:

                                   是!   加入Writer体系中缓冲区   BufferedWriter。

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

                                           BufferedWriter bufw = new BufferedWriter(fw);


-------------------------------------------------------------------------------------------------------- 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值