文档详情

《Java程序设计基础》第10章:输入输出系统.pptx

发布:2025-05-10约9.37千字共10页下载文档
文本预览下载声明

第10章输入输出系统学习重点:输入输出的总体结构流的概念构建不同的流

第10章输入输出系统10.1输入输出流的概述10.2各种流的使用文件流管道流连接文件过滤流对象的序列化随机访问10.3练习题

Java的输入和输出多以流的方式进行的,它的特点是数据的发送据发送或读入后才能被读写。和获取都是延数据序列顺序进行的,每个数据必须等待它前面的数10.1输入输出流的概述

当需要读入数据时,程序先从数据的来源(文件、网络等)打开一个流,然后从这个流中顺序读取数据当要输出数据时,程序打开一个流,通过这个流向输出目标顺序写入数据

1.Character流Character流以Reader(对应输入)和Writer(对应输出)两个类族来实现,其中Reader和Writer是输入和输出族的根类ReaderBufferedReaderCharArrayReaderInputStreamReaderFilterReaderPipedReaderStringReaderLineNumberReaderFileReaderPushbackReaderWriterBufferedwriterCharArraywriterOutputStreamReaderFilterWriterPipedWriterStringWriterFilterWriterFileWriter

2.Byte流传输8位的数据就应用Byte流,Java库中用InputStream(输入)和OutputStream(输出)类族中的类来实现8位数据的传输,这些类主要用来传输二进制数据,如声音和图像,ObjectInputStreamObjectOutputStreamy用来传输对象序列。

3.关于IO的根类Reader含有以下读取字符和字符数组的方法:intread()intread(charcbuf[])intread(charcbuf[],intoffset,intlength)而InputStream定义了读取byte型数据的方法如下:intread()intread(bytecbuf[])intread(bytecbuf[],intoffset,intlength)

Writer方法如下:intwrite(intc)intwrite(charcbuf[])intwrite(charcbuf[],intoffset,intlength)OutputStream方法如下:intwrite(intc)intwrite(bytecbuf[])intwrite(bytecbuf[],intoffset,intlength)

表10.1列出了java.io包中的各种流和它们的功能。注意,这些流都能传输char和byte,两种不同的数据类型。01表10.1024.各种流简介

01文件流(Filestreams)是用来传输当前系统下的某个文件中的一些内容02的,它应该是最简单的一种流,它可以是以下几种流类的对象:03FileReader,FileWriter,FileInputStream和FileOutputStream。2.1文件流10.2各种流的使用

例10.1使用FileReader和Filewriter的文件复制这个例子就是把partnovel.txt的内容传输到target.txt中,这两个文件都在本机的e:\files中。程序代码

例10.2使用InputStream和OutputStream的文件复制程序代码两个方法复制同样一段文件内容,每次读取的内容是不一样的,FileReader每次读取的是一个字符(charactor),而屏幕中显示的是这个字符的编码(0到65535之间的一个整数)。而FileInputStream每次读取的是一个字节(byte),而屏幕中显示的是这个字节的编码(0~255之间的一个整数)。

管道流(PipeStreams)是把一个线程的输出作为另一个线程的输01入。实现它的是PipedReader、PipedWriter、PipedInputStream和02PipedOutputStream。0310.2.2管道流

管道流(PipeStreams

显示全部
相似文档