欢迎来到天天文库
浏览记录
ID:49407100
大小:115.50 KB
页数:47页
时间:2020-02-06
《电子教案--第9章.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第九章输入、输出流本章导读1.文件2.文件字节流3.文件字符流4.从键盘读取数据5.缓冲流6.数组流7.字符串流8.数据流9.管道流10.对象流11.序列化与对象克隆12.随机读写流13.文件锁当程序需要读取磁盘上的数据或将程序中得到数据存储到磁盘时,就可以使用输入输出流,简称I/O流。I/O流提供一条通道程序,可以使用这条通道读取“源”中的数据,或把数据送到“目的地”。I/O流中的输入流的指向称做源,程序从指向源的输入流中读取源中的数据;输出流的指向称做目的地,程序通过向输出流中写入数据把信息传递到
2、目的地。虽然I/O流经常与磁盘文件存取有关,但是程序的源和目的地也可以是键盘、鼠标、内存或显示器窗口。Java的I/O流库提供大量的流类(在包java.io中)。其中有4个重要的abstract类:1.InputStream(字节输入流)2.Reader(字符输入流)3.OutputStream(字节输出流)4.Writer(字符输出流)其中InputStream和Reader类为其子类提供了重要的读取数据的read方法,OutputStream和Writer类为其子类提供了重要的写入数据的write方
3、法。我们将陆续介绍它们的子类及用法。9.1文件Java使用File类创建的对象来获取文件本身的一些信息,例如文件所在的目录、文件的长度、文件读写权限等,文件对象并不涉及对文件的读写操作。创建一个File对象的构造方法有3个:File(Stringfilename);File(StringdirectoryPath,Stringfilename);File(Filef,Stringfilename);其中,filename是文件名字,directoryPath是文件的路径,f是指定成一个目录的文件。使用F
4、ile(Stringfilename)创建文件时,该文件被认为是与当前应用程序在同一目录中。1.文件的属性经常使用File类的下列方法获取文件本身的一些信息:publicStringgetName()获取文件的名字。publicbooleancanRead()判断文件是否是可读的。publicbooleancanWrite()判断文件是否可被写入。publicbooleanexits()判断文件是否存在。publiclonglength()获取文件的长度(单位是字节)。publicStringgetAb
5、solutePath()获取文件的绝对路径。publicStringgetParent()获取文件的父目录。publicbooleanisFile()判断文件是否是一个正常文件,而不是目录。publicbooleanisDirectroy()判断文件是否是一个目录。publicbooleanisHidden()判断文件是否是隐藏文件。publiclonglastModified()获取文件最后修改的时间(时间是从1970年午夜至文件最后修改时刻的毫秒数2.目录(1)创建目录File对象调用方法:publ
6、icbooleanmkdir()创建一个目录,如果创建成功返回true,否则返回false(如果该目录已经存在将返回false)。(2)列出目录中的文件如果File对象是一个目录,那么该对象可以调用下述方法列出该目录下的文件和子目录:publicString[]list()用字符串形式返回目录下的全部文件,publicFile[]listFiles()用File对象形式返回目录下的全部文件。我们有时需要列出目录下指定类型的文件,比如.java、.txt等扩展名的文件。可以使用File类的下述两个方法,列
7、出指定类型的文件,publicString[]list(FilenameFilterobj)该方法用字符串形式返回目录下的指定类型的所有文件。publicFile[]listFiles(FilenameFilterobj)该方法用File对象返回目录下的指定类型所有文件。FilenameFile是一个接口,该接口有一个方法:publicbooleanaccept(Filedir,Stringname);3.文件的创建与删除当使用File类创建一个文件对象后,例如Filef=newFile("c:\my
8、letter","letter.txt");如果c:myletter目录中没有名字为letter.txt文件,文件对象f调用方法:publicbooleancreateNewFile()可以在c:myletter目录中建立一个名字为letter.txt的文件。文件对象调用方法publicbooleandelete()可以删除当前文件,例如:f.delete();在下面的例子1中,列出C:/1000目录下扩展名是.java文件的名字以及它
此文档下载收益归作者所有