首页 > 代码库 > Java File类方法使用详解

Java File类方法使用详解

Java File类的功能非常强大,利用java基本上可以对文件进行所有操作。文本将对Java File 文件操作的类详细的分析,并将File类中的常用方法进行简单介绍。

构造函数

public class FileDemo {	public static void main(String[] args) {		//构造函数File(String pathname)		File f1 = new File("D:\\a\\1.txt");				//File(String parent,String child)		File f2 = new File("D:\\a", "2.txt");				//File(File parent,String child)		File f3 = new File("D:"+File.separator+"a");		File f4 = new File(f3,"3.txt");				System.out.println(f1);	}}

 创建方法

1 boolean  createNewFile() 不存在就返回true;存在返回false2 boolean mkdir()  创建目录3 boolean mkdirs()  创建多级目录

 删除方法

1  boolean delete()

2 boolean deleteOnExit()文件使用后删除

public class FileDemo {	public static void main(String[] args) {	File f = new File("D:\\1.txt");	try {		System.out.println(f.createNewFile());		System.out.println(f.delete());	} catch (IOException e) {		// TODO Auto-generated catch block		e.printStackTrace();	}		}

  判断方法

  1 boolean canExecute()  判断文件是否可以执行

  2 boolean canRead() 判断文件是否可读

  3 boolean canWrite() 判断文件是否可写

  4 boolean exist() 判断文件是否存在

  5 boolean isDirectory() 判断文件是目录

  6 boolean isFile() 判断是否是文件

  7 boolean canHidden() 判断文件是否可见

  8 boolean isAbsolute() 判断文件是否是绝对路劲 ,文件不存在也能判断

 

 获取方法

 1.String getName()
 2.String getPath()
 3.String getAbsolutePath()
 4.String getParent()//如果没有父目录返回null
 5.long lastModified()//获取最后一次修改的时间
 6.long length()
 7.boolean renameTo(File f)
 8.File[] liseRoots()//获取机器盘符
9.String[] list()
10.String[] list(FilenameFilter filter)

 列出磁盘下的文件和文件夹

public class FileDemo3 {     public static void main(String[] args){         File[] files =File.listRoots();         for(File file:files){             System.out.println(file);             if(file.length()>0){                 String[] filenames =file.list();                 for(String filename:filenames){                     System.out.println(filename);                 }             }         }     } }

  

 文件过滤

 public class FileDemo4 {     public static void main(String[] args){         File[] files =File.listRoots();         for(File file:files){             System.out.println(file);             if(file.length()>0){                 String[] filenames =file.list(new FilenameFilter(){                     //file 过滤目录 name 文件名                     public boolean accept(File file,String filename){                         return filename.endsWith(".mp3");                     }                 });                 for(String filename:filenames){                     System.out.println(filename);                 }             }         }     } }

  

 利用递归列出所有文件

public class FileDemo5 {    public static void main(String[] args){        File f =new File("e:\\音樂");        showDir(f);    }    public static void showDir(File dir){        System.out.println(dir);        File[] files =dir.listFiles();        for(File file:files){            if(file.isDirectory())                showDir(file);            else                 System.out.println(file);        }    }}

  

 移动文件

public class Test5 {    public static void main(String[] args){        File f1 = new File("d:\\");        moveFile(f1);    }public static void moveFile(File dir){    File[] files=dir.listFiles();    for(File file:files){        if(file.isDirectory())            moveFile(file);        else{            if(file.getName().endsWith(".java"))                file.renameTo(new File("c:\\jad\\"+            file.getName().substring(0,file.getName().lastIndexOf(‘.‘))+".jad"));            }        }    }}

  

Java File类方法使用详解