数据的读写,按照数据类型可以分为两种:字符流和字节流(二者区别?)。所以数据读取方式按照数据类型也可以分为两类:字节流的读取和字符流的读取。
  一、字节流读取操作: 
 
  |  
 
  | 
 
  |-----1、 
 FileInputStrem和FileInputStream字节流 
 逐字节读写(速度最慢) 
 
 
  | 
 
  | 
 
  |-----2、 
 FileInputStrem和FileInputStream构造一个 
 缓冲数组进行读写(速度提升) 
 
 
  | 
 
  |-----3、利用字节缓冲区流 
 BufferedInputStream和BufferedOutputStream来直接 
 逐字节读写(速度较快) 
 
 
  | 
 
  | 
 
  |------4、利用字节缓冲区流 
 BufferedInputStream和BufferedOutputStream通过构造一个 
 缓冲数组进行读写( 
 速度最快) 
 
 
  | 
 
  | 
 
  |-----5、利用字符流 
 InputStreamWriter和 OutputStreamWriter直接 
 按字节读取 
 
 
 
  拷贝一个 
 
的视频文件, 
 
 
 
 
 
 
 
的视频文件, 
 
 
 
 
 
 
  但是呢,这样的结果是拷贝之后的视频,总大小减小了, 
 
 
 
 
 原因是直接用的是字符流拷贝导致的,所以对于视频、音乐这些多媒体文件来说,要用 
 字节流 
 进行拷贝。 
 
 
 
 
 原因是直接用的是字符流拷贝导致的,所以对于视频、音乐这些多媒体文件来说,要用 
 字节流 
 进行拷贝。 
  | 
 
  | 
 
  |-----6、字符流InputStreamWriter和 OutputStreamWriter直接用 
 缓冲区数组读写 
 
 
 
  同样拷贝上述视频文件, 
 
 
 
 
 
 
 
 
  | 
 
  | 
 
  |-----7、 
 字符缓冲流BufferedWriter和BufferedReader直接 
 逐字节读写 
 
 
 
  拷贝上述视频文件, 
 
 
 
 
 
 
 
 
  | 
 
  | 
 
  |-----8、 
 字符缓冲流BufferedWriter和BufferedReader按照 
 数组大小逐块读写 
 
 
 
  拷贝上述视频文件, 
 
 
 
 
 
 
 
 
  | 
 
  | 
 
  |-----9、字符缓冲流BufferedWriter和BufferedReader按 
 逐行读写(应用于文本读写) 
 
 
 
  总结: 
 
复制文本文件有几种方式?
9种
复制图片文件有几种方式?
4种
他们各自的优缺点是什么?
字符流按字符处理数据,速度较之于同原理的字节流快,但是使用范围较小,仅限文本文件;
字节流处理范围广,文本,音频,视频都可以处理。
