欢迎来到天天文库
浏览记录
ID:40238778
大小:851.00 KB
页数:45页
时间:2019-07-28
《Java语言程序设计 清华大学计算机与信息 7-Java程序的输入输出》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Java程序的输入输出流类概述字节流类字符流类文件类文件及终端输入输出I/O软件层设备驱动程序设备驱动程序设备驱动程序设备驱动程序设备驱动程序OS独立于设备的I/O层java.io提供I/O层(类层)应用程序应用程序应用程序java.io包的核心输入输出流类定义线性的顺序的输入输出数据流文件类(File类)各种操作系统的文件管理提供的基本服务一样,但实现细节互不兼容。解决java程序与文件系统的沟通。读输入流写输出流I/O流类数据源数据目标输入输出流的分类按输入方向输入流(如ImputStream、Reader等)输出流(如OutputStream、Writer等)按数据流的
2、编码内容面向字节的输入输出流类ImputStream/OutputStream面向字符的输入输出流类Reader/Writer按流连接的对象节点流(node)直接连接数据源的输入流、直接连接数据目标的输出流过滤流(filter),或称处理流不直接与数据源或数据目标相连,而是与另外的流进行配合提升对输入输出数据的处理功能。节点流与处理流节点流对指定的目标(磁盘文件、内存等)读/写处理流使用节点流或另一个处理流作为输入或输出。目的地数据源输入字节流-InputStream管理字节(适于读取面向字节的数据)是所有表示输入字节流类的父类(抽象类)三个基本方法:abstractintr
3、ead()从输入流中读下一个字节。intread(byte[]b)从输入流中读若干个字节到参数指定的数组中。intread(byte[]b,intoff,intlen)从输入流中读len个字节到数组中。off是写入数组的位置(位移)。输入字节流-InputStream其他方法:skip(longn)跳过n个字节(改变读入方法的读取位置)。mark(intreadlimit)在当前读取位置做标记.reset()回到最近一次做的标记处。booleanmarkSupported()判断流是否支持mark功能close()关闭输入流,释放与此输入流相连的系统资源。这些子类的构造函数都
4、可以用某种方式指定其数据源。加强输入流,对InputStream类进行功能扩充ByteArrayInputStream(byte数组)FileInputStream(文件路径名或File对象)ObjectInputStream(Inputstreamin)PipedInputStream(PipedOutputStreampipe)SequenceInputStream表示其他输入串的逻辑连接FilterInputStream(其他输入流)定义了子类对流的进一步处理功能。BufferedInputStream(InputStream in)DataInputStream(In
5、putStream in)各种数据读入InputStream的子类输出字节流-OutputStream抽象类:是所有表示输出字节流类的父类。功能:接受要输出的字节并将它送往目的地。方法:write(intb)将一个字节数据写入输出流write(byte[]b)将字节数组数据写入输出流。flush()刷新输出流,并使缓冲区中的数据写出。close()关闭输出流,释放与之相连的系统资源。OutputStream的子类FileOutputStream(File类对象或文件名),ByteArrayOutputStream()数据被写到无名字节数组,该字节数组内容可利用toByteAr
6、ray()和toString()分别取到指定字节数组和字符串中。PipedOutputStream(PipedInputStreampipe)ObjectOutputStreamFilterOutputStreamDataOutputStream(OutputStreamout)包含输出各种数据类型数据的方法,如writeFloat()PrintStream(OutputStreamout)包含输出各种数据类型数据的方法,如print(),println。但没有对应输入流节点流使用方法FileInputStreamFileInputStreaminfile=newFileIn
7、putStream("old.dat");FileOutputStreamFileOutputStreamoutfile=newFileOutputStream("new.dat");使用字节流(节点流)拷贝文件例importjava.io.*;publicclassTest{publicstaticvoidmain(String[]args)throwsIOException{intdata;FileInputStreamfis;FileOutputStreamfos;try{fis=newFileI
此文档下载收益归作者所有