1、数据流的概念
数据流:是指一组有顺序的、有起点和终端的字节集合,是对输入/输出的总称。
2、数据流的分类:
2.1、根据数据流的流向,可以将其分为输入流和输出流。
输入流的起点被称为源,程序是从指向源的输入流中读取源中的数据。
输入流中的数据只能读,不能写。
2.2、根据数据的传输单位,数据流可以分为字符流和字节流。
字节流(byte stream)以字节为单位,进行数据传输,可用于读写二进制数据。
字节流类一般以InputStream/OutputStream结尾。
字符流(character stream)以字符为单位,进行数据传输,用于处理文本数据,支持Unicode编码。
字符流一般以Reader/Writer结尾。
Java在java.io和java.util.zip包中,提供多种数据流类。

3、缓冲区:
数据流的操作,会涉及到外部设备,而,外部设备的读写速度比内存的读写速度要慢很多。如果直接在内存和外部设备之间传输数据,会音外部设备的速度限制,使得数据的传输效率变得很慢。在这种情况下,我们使用缓冲区的方法来提高内存与外部设备之间的数据传输效率。

缓冲区是在内存中,特地开辟出来的一块用于数据传输的空间。
只有当缓冲区的数据处于空或者满的时候,才会触发系统对外部设备进行写或读操作。
正是由于减少了传输数据时,系统对外部设备的调用次数,减少了调用时间开销,使得数据传输的整体效率提好。
4、Java的标准数据流:
import java.io.IOException; public class FileClass { public static void main(String [] args){ System.out.println("这里是标准输出流。"); try{ System.out.println("请输入一个字符:"); System.out.println("下面是标准输入流:"); int a = 0; a = System.in.read(); System.out.println("输入字符的ASCII码为:" + a); } catch(IOException e){ e.printStackTrace(); } System.err.println("这里是标准错误输出流"); } }
讯享网
输出结果如下:
讯享网这里是标准输出流。 请输入一个字符: 下面是标准输入流: b 输入字符的ASCII码为:98 这里是标准错误输出流
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/24591.html