zoukankan      html  css  js  c++  java
  • Java中9种IO的读取方式

    数据的读写,按照数据类型可以分为两种:字符流和字节流(二者区别?)。所以数据读取方式按照数据类型也可以分为两类:字节流的读取和字符流的读取。

    一、字节流读取操作:
    |
    |-----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种

             

    他们各自的优缺点是什么?

             字符流按字符处理数据,速度较之于同原理的字节流快,但是使用范围较小,仅限文本文件;

        字节流处理范围广,文本,音频,视频都可以处理。

  • 相关阅读:
    mac安装mysql 8.0.20
    leetcode之两数之和
    家人闲坐,灯火可亲汪曾祺散文集读书笔记
    java入门知识代码练习
    苏世民:我的经验与教训读后感
    java入门知识
    创业者日志——易居cms产品有什么不同的地方?
    易优CMS:channelartlist 获取当前频道的下级栏目的内容列表
    房产小程序可以实现什么功能?有什么优势?怎么推广小程序?
    房产中介是否需要用管理系统?哪个房产中介管理软件好?
  • 原文地址:https://www.cnblogs.com/Buffalo-L/p/4446379.html
Copyright © 2011-2022 走看看