/*
java.io.File
public class File extends Object implements Serializable, Comparable
◇ 文件或目录的生成
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 delete( ); //删除当前文件
◇ 目录操作
boolean mkdir( ); //根据当前对象生成一个由该对象指定的路径
String list( ); //列出当前目录下的文件
*/
import java.io.*;
//import java.util.logging.Filter;
public class FileDemo
{
public static void main(String args[]) throws IOException
{
File dir = new File("D:\\javawork\\Demo");
Filter filter = new Filter ("java");
System.out.println ("List java files in directory "+dir+"\n");
String[] files = dir.list(filter);
for (int i = 0; i < files.length; i++)
{
File f = new File (dir, files[i]);
System.out.println("fileName :" + f.getName());
System.out.println("Path: " + f.getPath());
System.out.println("AbsolutePath: " + f.getAbsolutePath());
System.out.println("Parent: " + f.getParent());
System.out.println("Exists ?: " + f.exists());
System.out.println("Can Write ?: " + f.canWrite());
System.out.println("Can Read ?: " + f.canRead());
System.out.println("Is file ?: " + f.isFile());
System.out.println("Is Directory ?: " + f.isDirectory());
/*File name = new File (f.getName()+1);
System.out.println("Rename to: " + f.renameTo(name));*/
if (f.isFile())
{
System.out.print("Last Modified: " + f.lastModified() + "\n");
System.out.println("Length: " + f.length() + "\n");
//f.delete();
}
else
{
//f.mkdir();
String[] str = f.list();
System.out.println("Directory contains:");
for (int index = 0; index < str.length; index++)
System.out.print(str[index] + " ");
System.out.println("\n");
}
}
}
}
class Filter implements FilenameFilter
{
String postFix;
Filter (String postFix)
{
this.postFix = postFix;
}
public boolean accept (File dir, String name)
{
return name.endsWith("." + postFix);
}
}
评论