JAVA教程第四讲Java的例外处理和I_O流4.5
文章作者 100test 发表时间 2007:03:10 18:42:36
来源 100Test.Com百考试题网
4.5 文件处理
I/O处理中,最常见的是对文件的操作,java.io包中有关文件处理的类有:File、FileInputStream、FileOutputStream、RamdomAccessFile和FileDescriptor;接口有:FilenameFilter。
4.5.1 文件描述
类File提供了一种与机器无关的方式来描述一个文件对象的属性。下面我们介绍类File中提供的各种方法。
◇ 文件或目录的生成
public File(String path);/*如果path是实际存在的路径,则该File对象
/*表示的是目录;如果path是文件名,则该File对象表示的是文件。*/
public File(String path,String name);//path是路径名,name是文件名
public File(File dir,String name);//dir是路径名,name是文件名
◇ 文件名的处理
String getName( ); //得到一个文件的名称(不包括路径)
String getPath( ); //得到一个文件的路径名
String getAbsolutePath( );//得到一个文件的绝对路径名
String getParent( ); //得到一个文件的上一级目录名
String renameTo(File newName). //将当前文件名更名为给定文件的
完整路径
◇ 文件属性测试
boolean exists( ); //测试当前File对象所指示的文件是否存在
boolean canWrite( );//测试当前文件是否可写
boolean canRead( );//测试当前文件是否可读
boolean isFile( ); //测试当前文件是否是文件(不是目录)
boolean isDirectory( ); //测试当前文件是否是目录
◇ 普通文件信息和工具
long lastModified( ).//得到文件最近一次修改的时间
long length( ). //得到文件的长度,以字节为单位
boolean 0delete( ). //删除当前文件
◇ 目录操作
boolean mkdir( ). //根据当前对象生成一个由该对象指定的路径
String list( ). //列出当前目录下的文件
【例4-3】
import java.io.*. //引入java.io包中所有的类
public class FileFilterTest{
public static void main(String args[]){
File dir=new File("d://ex"). //用File 对象表示一个目录
Filter filter=new Filter("java"). //生成一个名为java的过滤器
System.out.println("list java files in directory " dir).
String files[]=dir.list(filter). //列出目录dir下,文件后缀名
为java的所有文件
for(int i=0.i File f=new File(dir,files[i]). //为目录dir 下的文件或目录
创建一个File 对象
if(f.isFile()) //如果该对象为后缀为java的文件,
则打印文件名
System.out.println("file " f).
else
System.out.println("sub directory " f ). //如果是目录
则打印目录名
}
}
}
class Filter implements FilenameFilter{
String extent.
Filter(String extent){
this.extent=extent.
}
public boolean accept(File dir,String name){
return name.endsWith("." extent). //返回文件的后缀名
}
}