美文网首页
Java IO流

Java IO流

作者: 九叶轻尘 | 来源:发表于2018-12-18 11:19 被阅读4次

    字节流:主要由InputStream和OutputStream作为基类,操作的数据单元是8位的字节

    字符流:主要由Reader和Writer作为基类,操作的数据单元是16位的字符

    节点流:低级流,直接和数据源相接

    处理流:对节点流的包装。以增加缓冲的方式提高输入输出的效率,操作便捷,增加了输入输出的内容的量。

    字节和字符的区别:字节指的是8bit,在任何平台下是固定的大小。字符指的是一个字符所占据的空间大小。根据不同的编码方式,每个字符占据一个到数个字节的大小。不同的平台下,使用的编码方式大多不同。

    对于纯文本的文件一般情况下优先使用字符流,这样可以避免由编码方式不同导致的乱码现象。但是对于图片,视频等文件只能使用字节流,使用字符流将无法处理。


    File类:文件和目录路径名的抽象表示形式,与平台无关。能够新建、删除、重命名文件和目录,但是File本身不能访问文件内容。访问时需要使用输入输出流。

    相关关系,所有类都是基于4个基类实现的

    对文件的输入输出操作如下:

    简单操作

    缓冲流:套接在相应的节点流之上,对读写的数据提供缓冲的功能,提高读写的效率。对于输出的缓冲流,写入的数据会现在内存中缓存,使用flush()将会使内存中的数据立刻写出。具体使用如下:

    缓冲流的使用

    注意事项:

    1.IO流不属于内存资源,因此垃圾回收机制不能回收,需要在操作结束之后调用close()方法显示关闭释放资源。

    相关文章

      网友评论

          本文标题:Java IO流

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