欢迎来到天天文库
浏览记录
ID:49263764
大小:116.00 KB
页数:30页
时间:2020-02-02
《《Java程序设计与应用开发》第8章Java IO系统.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第8章JavaI/O系统8.1文件类8.2JavaI/O结构8.3使用流8.4对象序列化8.5小结8.1文件类8.1.1文件类File8.1.2文件过滤8.1.1文件类File-1不管是程序员还是程序和文件系统打交道总是不可避免的,我们经常要用cd这个命令来更改当前目录,在Windows中用dir查看文件信息,在Unix系统中用ls查看文件信息。在Java语言中,用类File表示文件,File类可以处理各种文件操作。和文件相关的一个重要概念是目录,Java的类File既可以表示文件,也可以表示目录。类File有3个常用构建器:File(String
2、fileName)File(Stringdirectory,StringfileName)File(Filedirectory,StringfileName)8.1.1文件类File-2第一个构建器通过文件名,可以是文件的完全路径名,也可以是相对路径名(相对于当前线程的工作目录),创建一个File对象。第二个构建器同时指定了文件的目录和文件名,第三个构建器和第二个的区别在于使用一个File对象而不是String对象来表示文件目录。下面我们通过例子来进行说明:8.1.1文件类File-3例8.1.1TheFile.javaimportjava.io.
3、*;classTheFile{publicstaticvoidmain(String[]args){FilediskC=newFile("C:/");FiletestFile=newFile(diskC,"test");System.out.println(diskC.getAbsolutePath()+"是否存在:"+diskC.exists());System.out.println(testFile.getAbsolutePath()+"是否存在:"+testFile.exists());}}8.1.1文件类File-4程序运行结果:C:是
4、否存在:trueC:test是否存在:false既然调用File类构建器并不能创建一个文件,那么我们如何创建一个文件呢?一种方法是调用File对象的方法createNewFile(),另一种更常用的方法是调用我们随后要介绍的类FileOutputStream的构建器,它还可以提供File类不具备的文件输出功能。File类的方法mkdir()和mkdirs()可以用来创建目录,这两个方法的区别在于mkdirs()可以创建目录路径中多层目录,即同时创建这个目录的父目录以及父目录的父目录,而mkdir()要求创建目录的父目录已存在。8.1.1文件类Fi
5、le-5File类大概有40个方法,下面我们列举其中一些较为常用的:booleancreateNewFile()如果File所表示的文件不存在则创建一个新的空文件,创建成功返回true,失败则返回false。booleandelete()删除File所表示的文件或目录,删除目录要求该目录为空,返回值表示删除动作是否成功。booleanmkdirs()创建一个目录。booleanrenameTo(Filedestination)对一个文件改名或移动。booleanisDirectory()检测File对象表示的是否为目录。publicbooleani
6、sFile()检测File对象表示的是否为文件。booleancanRead()检测一个文件是否可读。8.1.1文件类File-6booleancanWrite()检测一个文件是否可写。booleanexists()检测一个文件是否存在。String[]list()获取File所表示的目录下的文件和目录列表。longlastModified()返回文件最好修改时间。时间为基于1970-01-0100:00:00的毫秒数。StringgetPath()返回相对路径名(包括文件名)。StringgetAbsolutePath()返回完全路径名。Stri
7、nggetParent()如果File对象指定了父目录,则返回父目录名,否则返回一个null值。StringgetName()返回File对象所表示对象的文件名或目录名。8.1.1文件类File-7下面在看一个File的应用实例,在Windows中我们可以使用DOS命令tree显示一个目录结构,即显示一个目录下包含的文件和子目录,以及子目录下再包含的文件和子目录。(程序源代码请参见教材例8.1.3)程序运行结果示例:C:>javaJTreec:windowsc:windows
8、+$hf_mig$
9、
10、+KB818529
11、
12、
13、+RTMQFE
14、
15、
16、
17、
18、-shdocvw.dll
19、
20、
21、
22、-urlmon.dll
23、
24、
25、-spmsg.dll
26、
27、
28、-spuninst.exe
29、
30、
31、+
此文档下载收益归作者所有