美文网首页
No.13 流(Stream)

No.13 流(Stream)

作者: 醒着的码者 | 来源:发表于2016-04-10 22:19 被阅读21次

(1)java的输入和输出所用的到类基本都存在于java.io包中;
(2)输入流表示从一个源读取数据,输出流表示向一个目标写数据;
(3)程序中的输入输出都是以流的形式保存的,流中保存的实际上全都是字节文件;
(4)输入输出主要用于文件传输和网络编程中;


字节流和字符流概述:

  • java中提供了专用于输入输出功能的包Java.io,其中包括:
    InputStream,OutputStream;Reader,Writer。
  • (1)InputStream 和OutputStream,两个是为字节流设计的,主要用来处理字节或二进制对象,
    (2)Reader和 Writer两个是为字符流(一个字符占两个字节)设计的,主要用来处理字符或字符串.
  • 原则上来说java虚拟机底层存在的都是字节数据,可以用字符流读取是因为该方法把字节数据通过一定的编码方式(国际统一使用Unicode,一般是UTF-8)组装成字节的。
  • 字节流:是最基本的操作流的方法,它是用于操作任何对象,字节流中提供了几乎所有任何类型IO操作的功能,但是他不可以操作字符串。实际应用中主要用于处理非字符文本的一切IO操作,如视频,音频。。。
  • 字符流:由于实际中IO会操作大量的文本文件,如txt文件等等,为了提高读写效率,java提出了字符流的概念,
  • 操作方法:
    1 使用File类打开一个文件
    2 通过字节流或字符流的子类,指定输出的位置,在这一步如果指定文件不存在则新建一个。
    3 进行读/写操作
    4 关闭输入/输出

字节流与字符流的区别

字节流在操作的时候本身是不会用到缓冲区(内存)的,是与文件本身直接操作的,而字符流在操作的时候是使用到缓冲区的
字节流在操作文件时,即使不关闭资源(close方法),文件也能输出,但是如果字符流不使用close方法的话,则不会输出任何内容,说明字符流用的是缓冲区,并且可以使用flush方法强制进行刷新缓冲区,这时才能在不close的情况下输出内容


字节流

  • 字节输出流(OutputStream)
    OutputStream是整个IO包中字节输出流的最大父类,所有的字节输出流都可以向上转型为OutputStream。
OutputStream.gif
  • 字节输入流(InputSteam)

InputStream是整个IO包中字节输入流的最大父类,所有的字节输入流都可以向上转型为InputStream。

InputStream.gif

字符流

  • 字符输入流(Reader)

    图片来自于网络

Reader.gif
  • 字符输出流(Writer)

    图片来自于网络

writer.gif

相关文章

  • No.13 流(Stream)

    (1)java的输入和输出所用的到类基本都存在于java.io包中;(2)输入流表示从一个源读取数据,输出流表示向...

  • JDK8新特性之Stream流

    是什么是Stream流 java.util.stream.Stream Stream流和传统的IO流,它们都叫流,...

  • 2020-07-04【Stream流】

    体验Stream流 Stream流的生成方式 Stream流的常见中间操作 Stream流的常见终结操作 Stre...

  • JavaStream流基础学习

    Stream流 Straem流使用 使用Sream流: 一行搞定 1.2 Stream流生成方式 Stream流的...

  • 2019-02-02——Java8 Stream

    Stream分为两种: 串行流——stream() 并行流——parallelStream() Stream的特性...

  • Stream流

    流式思想 Stream流的简单尝试 传统for循环遍历的方法 Steam流的方式 获取stream流 stream...

  • Stream流

    一、创建流 Arrays.stream Stream.of Collection.stream Stream.it...

  • 13.Stream流、方法引用

    主要内容 Stream流 方法引用 第一章 Stream流 说到Stream便容易想到I/O Stream,而实际...

  • Stream流

    体验Stream Stream流生产方式生成流list.stream()中间操作filter()终结操作forEa...

  • Stream操作

    1、创建Stream流 2、stream和parallelStream的简单区别 stream是顺序流,由主线程按...

网友评论

      本文标题:No.13 流(Stream)

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