------- android培训、java培训、期待与您交流! ----------
一:Java IO流概念引述
l IO流用来处理设备之间的数据传输
l JAVA对数据的操作是通过流的方式
l Java用与操作流的对象都在IO包中
l 流按操作数据分为两种:字节流和字符流
l 流按流向分为:输入流,输出流
二 Java IO流常用基类
Ø 字节流的抽象基类:InputStream输入流,OutputStream输出流
字节流下几个重要的子类
FileInputStream
FileOutputStream
BufferedInputStream
BufferedOutputStream
Ø 字符流的抽象基类:Reader输入流 Writer输出流
FileReader
FileWriter:字符文件写入流
BuffereReader
BuffereWriter:将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。可以指定缓冲区的大小,或者接受默认的大小。在大多数情况下,默认值就足够大了。其实为FileWriter的装饰类
InputStreamReader: InputStreamReader 是字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字符。它使用的字符集可以由名称指定或显式给定,或者可以接受平台默认的字符集。
OuputStreamWriter: OutputStreamWriter 是字符流通向字节流的桥梁:可使用指定的 charset 将要写入流中的字符编码成字节。它使用的字符集可以由名称指定或显式给定,否则将接受平台默认的字符集。
三、下面通过简单的例子来进一步演示各个类的用法
1.FileReader FileWriter
2.BuffereWriter BuffereReader
3.BufferWriter是FileReater的装饰类 何为装饰类 如图说明:
4.FileInputStream FileOutputStream
5.BufferedInputStream BufferedOutputStream 看名字就可以得知与前面雷同
6.InputStream输入流,OutputStream输出流
7InputStreamReader: OuputStreamWriter
四、怎么样按照需求确定用哪种输入流哪种输出流
例一:
例二:
例三: