黑马程序员技术交流社区

标题: IO流小结 [打印本页]

作者: 等你的季节-夏天    时间: 2015-6-30 22:18
标题: IO流小结
IO流小结

字节流
  输出流  OutputStream -- 写字节,字节数组,字节数组一部分
    |-- FileOutputStream 构造方法File,String文件名
    |-- BufferedOutputStream 构造方法中,传递任意字节输出流

  输入流 InputStream -- 读字节,字节数组,字节数组一部分
    |-- FileInputStream 构造方法File,String文件名
    |-- BufferedInputStream 构造方法中,传递任意字节输入流


字符流
  输出流 Writer -- 写字符,字符数组,字符数组一部分,字符串
    |-- OutputStreamWriter 字符转字节桥梁,带编码表名 构造方法中,传递字节输出流
      |-- FileWriter 构造方法传递File,String文件名
    |-- BufferedWriter 构造方法传递,传递任意字符输出流,特有方法 newLine

输入流 Reader -- 读字符,字符数组
    |-- InputStreamReader 字节转字符桥梁,带编码表名 构造方法中,传递字节输入流
      |-- FileReader 构造方法传递File,String文件名
    |-- BufferedReader 构造方法传递,任意字符输入流,特有方法  readLine() 打印一行


使用技巧
   数据源:
        如果数据源明确就是文本文件,选择FileReader,InputStreamReader 字符输入流读取文件
        需要提高效率吗 ,如果需要提高,选择字符数组缓冲,BufferedReader行读取

        如果数据源明确不是文本文件,选择FileInputStream 字节输入流读取文件
        需要提高效率吗,如果需要提高,选择字节数组缓冲,BufferedInputStream

         如果数据源无法明确是什么,选择字节流读取


   数据目的:
      如果数据目的明确是文本文件,选择FileWriter,OutputStreamWriter 字符输出流写文件
      需要提高效率吗,如果需要,选择字符数组缓冲,BufferedWriter写换行

      如果数据目的明确不是文本文件,选择FileOutputStream 字节输出流写文件
      需要提高效率吗,如果需要提高,选择字节数组缓冲,BufferedOutputStream

      如果数据目的无法明确是什么,选择字节流写入






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2