美文网首页
javaI/O流

javaI/O流

作者: onweer | 来源:发表于2016-02-07 00:30 被阅读30次

    IO的使用 -> 数据传输

    <blockquote>内存 -> 硬盘 , Socket编程</blockquote>


    字节流

    输入字节流

    • InputStream 所有输出字节流的基类, 抽象类
      • FileInputStream 读取文件输入字节流
      • BufferedInputStream 具有缓存功能的输入字节流 ,底层维护了一个8kb字节数组,提高读取文件数据的效率
        <code> private static int DEFAULT_BUFFER_SIZE = 8192;</code>
        public static void main(String[] args) throws Exception {
            BufferedInputStream bis = new BufferedInputStream(System.in);
            int len = bis.read();
            System.out.println(len);
        }
    

    Console

    aaa
    97


    输出字节流

    • OutputStream 所有输出字节流的基类,抽象类
      • FileOutputStream 向文件输出数据的字节流
      • BufferedOutputStream 具有缓存功能的输出字节流 ,底层维护了一个8kb字节数组,提高读取文件数据的效率

    使用场景: 图片,视频,音频 ... (不需要解码的使用字节流)


    字符流 = 字节流 + 解码

    输入字符流


    • Reader 所有输入字符流的基类,抽象类
      • FileReader 读取文件字符的输入字符流,默认使用GBK字符集
      • BufferedReader 缓冲输入字符流 ,提高读取文件字符的效率,8kb长度的byte数组

    比字节流多 readLine() 功能


    输出字符流

    • Writer 所有输出字符流的基类,抽象类
      • FileWriter 读取文件字符的输出字符流 ,默认使用GBK字符集
      • BufferedWrite 缓冲输出字符流 ,提高写入文件字符的效率,8kb长度的byte数组

    比字节流多 newLine() 功能 使用场景: 读写的都是字符数据


    转换流

    输入字节流的转换流


    • InputStreamReader

    输出字节流的转换流

    • OutputStreamWriter

    作用:
    1.可以把对应的字节流转换成字符流。
    2.可以指定编码表读写文件数据


    给个github follow me的链接,上面有很多初学者可供学习的资料,项目.

    <a>https://github.com/SuperZee</a>

    相关文章

      网友评论

          本文标题:javaI/O流

          本文链接:https://www.haomeiwen.com/subject/qfdykttx.html