《输入输出流》PPT课件.ppt

《输入输出流》PPT课件.ppt

ID:51994240

大小:1.98 MB

页数:42页

时间:2020-03-27

《输入输出流》PPT课件.ppt_第1页
《输入输出流》PPT课件.ppt_第2页
《输入输出流》PPT课件.ppt_第3页
《输入输出流》PPT课件.ppt_第4页
《输入输出流》PPT课件.ppt_第5页
资源描述:

《《输入输出流》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7章输入/输出流主讲教师:丁天翔本章知识点流的概念InputStream和OutputStream的继承结构Reader和Writer的继承结构原始流处理器和链接流(装饰流)处理器常用流的使用文件类流(Stream)的概念Java语言采用流的机制来实现输入/输出。所谓流,就是数据的有序排列,而流可以是从某个源(称为流源,SourceofStream)出来,到某个目的地(称为流汇,SinkofStream)去的。根据流的方向可以将流分成输入流和输出流。一个程序总是从输入流读取数据,而向输出流写出数据Java中负责I/O的类(称为流类)统一存放在java.io包中。该包又叫做I/O库流

2、的处理过程(输入)用来处理流的流类又称为流处理器例如,一个java程序可以使用FileInputStream类直接从一个文件中读取数据,如下图所示:FileInputStreambyte类型的数据byte类型的数据源磁盘文件像FileInputStream这样的流类叫做流处理器。一个流处理器就像一个流的管道一样,从一个流源吸入某种类型的数据,并输出某种类型的数据。类似地,也可以用FileOutputStream类直接向一个文件中写出数据,如下图所示:FileOutputStreambyte类型的数据byte类型的数据汇磁盘文件在实际应用当中,这种简单的机制并没有太大的用处。因为程序需

3、要写出的往往是非常结构化的信息,比如数值、文字、源代码等。这样一来,数据的转换工作将十分复杂。流的处理过程(输出)流的处理过程(链接机制)Java的I/O库提供了一个称作链接(Chaining)的机制,可以将一个流处理器与另一个流处理器首尾相接,以其中之一的输出为输入,形成一个流管道的链接例如:DataInputStream流处理器可以把FileInputStream流对象的输出当作输入,将byte类型的数据转换成java的基本数据类型和String类型的数据,如下图所示:FileInputStreambyte类型的数据byte类型的数据源磁盘文件DataInputStreamint

4、类型的数据float类型的数据String类型的数据节点流(原始流处理器)过滤流(链接流处理器)类似地,向一个文件写入byte类型的数据不是一个简单的过程:一个程序需要向一个文件里面写入的数据往往是结构化的,而不是byte类型的,因此在利用FileOutputStream写的时候必须首先经过转换。DataOutputStream流处理器提供了直接接收基本数据类型和String类型的方法,而这个流处理器的输出数据则是byte类型。这样一来,可以将DataOutputStream和FileOutputStream链接起来,达到直接将结构化的数据写入到文件中的目的。int类型的数据floa

5、t类型的数据String类型的数据DataOutputStreambyte类型的数据汇磁盘文件byte类型的数据FileOutputStream流的处理过程(链接机制)JavaI/O库流处理器所处理的流必定都有流源(汇),流源(汇)分成两大类:数组、String、File等,叫原始流源。用于链接流类的流源,叫链接流源。Java语言的I/O库是对各种常见的流源、流汇、以及处理过程的抽象化,Java语言的I/O库是由一些基本的原始流处理器和围绕它们的链接流处理器所组成的,按处理数据的单位划分,Java支持两种基本的流类型:字符流和字节流JavaI/O库的设计原则两个对称性:输入-输出对称

6、:InputStream和OutputStream各自占据byte流的输入与输出的两个平行的类等级结构的根部;而Reader和Writer各自占据char流的输入与输出的两个平行的类等级结构的根部byte-char对称:InputStream与Reader的子类分别负责byte和char流的输入;OutputStream和Writer的子类分别负责byte和char流的输出输入字节流InputStreamInputStream有7个直接子类,有4个属于FilterInputStream的子类注:图中深色的类是节点流处理器,其他是过滤流处理器。InputStreamFileInputS

7、treamPipedInputStreamObjectInputStreamSequenceInputStreamFilterInputStreamStringBufferInputStreamByteArrayInputStreamDataInputStreamBufferedInputStreamPushbackInputStreamLineNumberInputStream原始流处理器:接收一个byte数组对象、String对象、File对象等原始流

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。