Java之IO(五)IO流操作规律
由于IO流中对象很多,在实际开发中,到底使用哪些对象呢?
字节流
InputStream父类
-FileInputStream 字节输入流
-BufferedInputStream 高效字节输入流
OutputStream父类
-FileOutputStream 字节输出流
-BufferedOutputStream 高效字节输出流
字符流
Reader父类
-InputStreamReader 可转换编码字符输入流
--FileReader 默认编码字符输入流,是InputStreamReader的子类
-BufferedReader 高效字符输入流
Writer父类
-OutputStreamWriter 可转换编码字符输出流
--FileWriter 默认编码字符输出流,是OutputStreamWriter的子类
-BufferedWriter 高效字符输出流
明确一:要操作的数据是数据源还是数据目的,即先明确是读还是写
源: InputStream字节输入流的父类 Reader字符输入流的父类
目的:OutputStream字节输出流的父类 Writer字符输出流的父类
明确二:要操作的数据是字节还是文本
源:
字节:InputerStream
文本:Reader
目的:
字节:OutputStream
文本:Writer
明确三:明确数据所在的具体设备
源设备:
硬盘:文件 File开头
内存:数组,字符串
键盘:System.in
网络:socket
目的设备:
硬盘:文件 File开头
内存:数组,字符串
键盘:System.out
网络:socket
明确四:是否需要额外功能
额外功能:
转换编码:转换流:InputStreamReader OutputStreamWriter
提高效率:缓冲区对象:Bufferedxxxxxx