Java IO 使用时具体对象的确定

真正编程时如遇到Io操作时具体流对象使用的确定。

如:是使用字符流还是字节流,是否使用缓冲区等


1. 明确源和目的!

源和目的,也就是输入和输出。输入和输出分别对应两个顶层父类,一个字节流一个字符流

源:InputStream Reader

目的:OutputStream Writer

2. 明确文件数据是否为纯文本!

是纯文本!输入或读取则为: Reader 

输出则为:Writer


不是纯文本! 输入或读取则为:InputStream

输出则为:OutputStream

到此可以明确具体使用的体系!  是Reader、Writer   还是 InputStream、OutputStream


3. 明确具体的设备!

输入设备: 

硬盘:File 

键盘:System.in

内存:数组

网络:socket流

输出设备:

硬盘:File

键盘:System.out

内存:数组

网络:socket流

到此可以明确具体使用的对象。

如纯文本文件的复制,则可以确定FileReader FileWriter

4 明确是否需要额外功能。

(1) 是否需要高效

是,Buffer 进行装饰。


例: 文本文件(.txt)的复制。


可以确定是纯文本 所以 确定体系为 Reader-Writer


复制 。可以确定输入设备(在此即为读取设备)和输出设备都是 硬盘:File

所以到此可以确定具体使用对象:FileReader---FileWriter


如果需要其他功能 如高效 则进行buffer装饰。

BufferedReader bufr = new BufferedReader(new FileReader("1.txt"));


对于操作其他类型文件可能还需要其他额外功能,如转换 InputStreamReader等。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值