Java File类用法详解

来源:互联网 发布:美国大学统计 知乎 编辑:程序博客网 时间:2024/06/05 02:28

Java文件类的功能非常强大,利用Java基本上可以对文件进行所有的操作。本文将对Java文件操作类进行详细地分析,并将文件类的常用方法进行简单介绍,有需要的Java开发者可以看一下。

构造函数

public  class  FileDemo {      public  static  void  mainString [] args {          //构造函数File(String pathname)          文件f1 = new File(“c:\\ abc \\ 1.txt”);         // File(String parent,String child)          文件f2 = new File(“c:\\ abc”“2.txt”);         // File(File parent,String child)          文件f3 = new File(“c:” + File.separator + “abc”);         系统。out .println(f1); //c:\abc\1.txt     } }

创建方法

1.boolean createNewFile()不存在返回true存在返回false 
2.boolean mkdir()创建目录
3.boolean mkdirs()创建多级目录

删除方法

1.boolean delete()
2.boolean deleteOnExit()文件使用完成后删除

import java.io.File;import java.io.IOException;public  class  FileDemo2  {     public  static void main(String [] args){         File f = new File“d:\\ 1.txt”);        尝试 {             System .out。println(f.createNewFile()); //当文件存在时返回false             System .out。println(f.delete()); //当文件不存在时返回false         } catchIOException e){             // TODO自动生成的catch块            e.printStackTrace();        }    }}

判断方法

1.boolean canExecute()判断文件是否可执行
2.boolean canRead()判断文件是否可读
3.boolean canWrite()判断文件是否可写
4.boolean exists()
判断文件是否存在5.boolean isDirectory()
6 .boolean isFile()
7.boolean isHidden()
8.boolean isAbsolute()判断是否是绝对路径文件不存在也能判断

获取方法

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

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

public  class  FileDemo3 {      public  static  void  mainString [] args {         File [] files = File.listRoots();         for(文件文件:文件){             系统。out .println(file);             if(file.length()> 0){                 String [] filenames = file.list();                 for(String filename:filenames){                     系统。out .println(filename);                 }             }         }     } }

文件过滤

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

File [] listFiles()

File [] listFiles(FilenameFilter filter)

利用递归列出全部文件

public  class  FileDemo5 {     public  static  void  mainString [] args {        File f = new File(“e:\\音乐”);        showDir(F);    }    public  static  void  showDirFile dir {        系统。out .println(dir);        File [] files = dir.listFiles();        for(文件文件:文件){             if(file.isDirectory())                showDir(文件);            其他                  系统。out .println(file);        }    }}

移动文件

找到d盘下所有的.java文件,拷贝至c:\ jad目录下,并将所有文件的类型由.java修改为.jad。

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(文件文件:文件){         if(file.isDirectory())            moveFile(文件);        else {             if(file.getName()。endsWith(“.java”))                file.renameTo(new File(“c:\\ jad \\” +            file.getName()。substring(0,file.getName()。lastIndexOf('。'))+  .jad ));            }        }    }}
原创粉丝点击