java中File类的使用方法

(转载houfeng30920)http://blog.csdn.net/houfeng30920/article/details/5149685


构造函数

[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. public class FileDemo {  
  2.      public static void main(String[] args){  
  3.          //构造函数File(String pathname)  
  4.          File f1 =new File("c:\\abc\\1.txt");  
  5.          //File(String parent,String child)  
  6.          File f2 =new File("c:\\abc","2.txt");  
  7.          //File(File parent,String child)  
  8.          File f3 =new File("c:"+File.separator+"abc");//separator 跨平台分隔符  
  9.          File f4 =new File(f3,"3.txt");  
  10.          System.out.println(f1);//c:\abc\1.txt  
  11.   
  12.      }  
  13.   
  14.  }  

创建方法

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

删除方法

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

[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. import java.io.File;  
  2. import java.io.IOException;  
  3.   
  4. public class FileDemo2 {  
  5.     public static void main(String[] args){  
  6.         File f =new File("d:\\1.txt");  
  7.         try {  
  8.             System.out.println(f.createNewFile());//当文件存在时返回false  
  9.             System.out.println(f.delete());//当文件不存在时返回false  
  10.         } catch (IOException e) {  
  11.             // TODO Auto-generated catch block  
  12.             e.printStackTrace();  
  13.         }  
  14.     }  
  15. }  

判断方法

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.long length()
7.boolean renameTo(File f)
8.File[] liseRoots()//获取机器盘符
9.String[] list() 
10.String[] list(FilenameFilter filter)
列出磁盘下的文件和文件夹

[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. public class FileDemo3 {  
  2.      public static void main(String[] args){  
  3.          File[] files =File.listRoots();  
  4.          for(File file:files){  
  5.              System.out.println(file);  
  6.              if(file.length()>0){  
  7.                  String[] filenames =file.list();  
  8.                  for(String filename:filenames){  
  9.                      System.out.println(filename);  
  10.                  }  
  11.              }  
  12.          }  
  13.      }  
  14.   
  15.  }  

文件过滤
[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. import java.io.File;  
  2.  import java.io.FilenameFilter;  
  3.  public class FileDemo4 {  
  4.      public static void main(String[] args){  
  5.          File[] files =File.listRoots();  
  6.          for(File file:files){  
  7.              System.out.println(file);  
  8.              if(file.length()>0){  
  9.                  String[] filenames =file.list(new FilenameFilter(){  
  10.                      //file 过滤目录 name 文件名  
  11.                      public boolean accept(File file,String filename){  
  12.                          return filename.endsWith(".mp3");  
  13.                      }  
  14.                  });  
  15.                  for(String filename:filenames){  
  16.                      System.out.println(filename);  
  17.                  }  
  18.              }  
  19.          }  
  20.      }  
  21.   
  22.  }  

File[]  listFiles()

File[] listFiles(FilenameFilter filter)

利用递归列出全部文件

代码如下:
[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. public class FileDemo5 {  
  2.     public static void main(String[] args){  
  3.         File f =new File("e:\\音樂");  
  4.         showDir(f);  
  5.     }  
  6.     public static void showDir(File dir){  
  7.         System.out.println(dir);  
  8.         File[] files =dir.listFiles();  
  9.         for(File file:files){  
  10.             if(file.isDirectory())  
  11.                 showDir(file);  
  12.             else  
  13.                 System.out.println(file);  
  14.         }  
  15.     }  
  16.   
  17. }  

移动文件

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

[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. public class Test5 {  
  2.     public static void main(String[] args){  
  3.         File f1 = new File("d:\\");  
  4.         moveFile(f1);  
  5.     }public static void moveFile(File dir){  
  6.     File[] files=dir.listFiles();  
  7.     for(File file:files){  
  8.         if(file.isDirectory())  
  9.             moveFile(file);  
  10.         else{  
  11.             if(file.getName().endsWith(".java"))  
  12.                 file.renameTo(new File("c:\\jad\\"+  
  13.             file.getName().substring(0,file.getName().lastIndexOf('.'))+".jad"));  
  14.             }  
  15.         }  
  16.     }  
  17. }  
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值