第9章 IO(输入输出)流-【千锋教育】Java语言程序设计(第二版)

2023-03-21
| 144页
| 100人阅读
| 0人下载
教辅

内容正文:

第9章 IO(输入输出)流 流概念 字节流 字符流 其他I/O流 File类 RandomAccessFile 字符编码 NIO 流概述 字节流 ☞点击查看本小节知识架构 字符流 ☞点击查看本小节知识架构 其他I/O流 File类 RandomAccessFile ☞点击查看本小节知识架构 字符编码 ☞点击查看本小节知识架构 ☞点击查看本小节知识架构 9.2 9.3 9.4 9.5 9.1 9.7 9.6 NI/O ☞点击查看本小节知识架构 9.8 目录  掌握 了解 了解 掌握 学习目标 掌握字节流和字符流 1 了解常见字符编码 4 2 了解其他I/O流 3 掌握File类及其用法 销售额 掌握知识 理解知识 熟悉知识 了解知识 2.5 2.5 2.5 2.5 程序的主要任务是操作数据。在程序运行时,这些数据都必须位于内存中,并且属于特定的类型,程序才能操作它们。Java I/O系统负责处理程序的输入和输出,I/O类库位于java.io包中,它对各种常见的输入流和输出流进行了抽象。本章将对I/O流进行详细讲解。 流就是字节序列的抽象概念,能被连续读取数据的数据源和能被连续写入数据的接收端就是流,流机制是Java及C++中的一个重要机制,通过流开发人员可以自由控制文件、内存、I/O设备等数据的流向。而I/O流就是用于处理设备上的数据,如硬盘、内存、键盘录入等,就好像管道,将两个容器连接起来,如图所示。 9.1 流概述 I/O流有很多种,按操作数据单位不同可分为字节流(8 b)和字符流(16 b),按数据流的流向不同分为输入流和输出流,如表所示。 9.1 流概述 从表中可看出I/O流的大致分类,Java的I/O流共涉及40多个类,实际上这些类非常规则,都是从这4个抽象基类派生的,由这四个类派生出来的子类名称都是以其父类名作为子类名后缀。接下来会详细讲解这些流的使用。 9.2 字节流 9.2.1 字节流的概念 返回目录 9.2.2 字节流读写文件 9.2.3 文件的复制 知识架构 9.2 字节流 9.2.4 字节流的缓冲区 返回目录 9.2.5 装饰设计模式 9.2.6 字节缓冲流 知识架构 在计算机中,所有的文件都能以二进制(字节)形式存在,Java的I/O中针对字节传输操作提供了一系列流,统称为字节流。字节流有两个抽象基类InputStream和OutputStream,分别处理字节流的输入和输出,所有的字节输入流都继承自InputStream类,所有的字节输出流都继承自OutputStream类。在这里,输入和输出的概念要有一个参照物,是站在程序的角度来理解这两个概念,如图所示。 9.2 字节流 9.2.1 字节流的概念 在图中,从程序到文件是输出流(OutputStream),将数据从程序输出到文件。从文件到程序是输入流(InputStream),通过程序读取文件中的数据。这样就实现了数据的传输。 在Java中,提供了一系列用于操作文件读写的有关方法,接下来先了解一下InputStream类的方法,如表所示。 9.2 字节流 9.2.1 字节流的概念 9.2 字节流 9.2.1 字节流的概念 表中列出了InputStream类的方法,其中最常用的是三个重载的read()方法和close()方法,read()方法是从流中逐个读入字节,int read(byte[] b)方法和int read(byte[] b, int off, int len)方法是将若干字节以字节数组形式一次性读入,提高读数据的效率。操作I/O流时会占用宝贵的系统资源,当操作完成后,应该将I/O所占用的系统资源释放,这时就需要调用close()方法关闭流。 9.2 字节流 9.2.1 字节流的概念 介绍完InputStream类的相关方法,接下来要介绍一下它所对应的OutputStream类的相关方法,如表所示。 9.2 字节流 9.2.1 字节流的概念 表中,三个重载的write()方法都是向输出流写入字节,其中,void write(int b)方法是逐个写入字节;void write(byte[] b) 方法和void write(byte[] b, int off, int len) 方法是将若干个字节以字节数组的形式一次性写入,提高写数据的效率;flush()方法用于将当前流的缓冲区中数据强制写入目标文件;close()方法用来关闭此输出流并释放系统资源。 InputStream和OutputStream都是抽象类,不能实例化,所以要实现功能,需要用到它们的子类,接下来先了解一下这些子类。 9.2 字节流 9.2.1 字节流的概念 如图所示。 9.2 字节流 9.2.1 字节流的概念 从图中可看出,

资源预览图

第9章 IO(输入输出)流-【千锋教育】Java语言程序设计(第二版)
1
第9章 IO(输入输出)流-【千锋教育】Java语言程序设计(第二版)
2
第9章 IO(输入输出)流-【千锋教育】Java语言程序设计(第二版)
3
第9章 IO(输入输出)流-【千锋教育】Java语言程序设计(第二版)
4
第9章 IO(输入输出)流-【千锋教育】Java语言程序设计(第二版)
5
第9章 IO(输入输出)流-【千锋教育】Java语言程序设计(第二版)
6
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。