java中File类的使用方法

 更新时间:2013年04月27日 09:17:22   作者:  
本篇文章介绍了,在java中File类的使用方法。需要的朋友参考下

构造函数

复制代码 代码如下:

public class FileDemo {
     public static void main(String[] args){
         //构造函数File(String pathname)
         File f1 =new File("c:\\abc\\1.txt");
         //File(String parent,String child)
         File f2 =new File("c:\\abc","2.txt");
         //File(File parent,String child)
         File f3 =new File("c:"+File.separator+"abc");//separator 跨平台分隔符
         File f4 =new File(f3,"3.txt");
         System.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");
        try {
            System.out.println(f.createNewFile());//当文件存在时返回false
            System.out.println(f.delete());//当文件不存在时返回false
        } catch (IOException e) {
            // TODO Auto-generated catch block
            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.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);
                 }
             }
         }
     }

 }

文件过滤
复制代码 代码如下:

import java.io.File;
 import java.io.FilenameFilter;
 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);
                 }
             }
         }
     }

 }

File[]  listFiles()

File[] listFiles(FilenameFilter filter)

利用递归列出全部文件

复制代码 代码如下:

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);
        }
    }

}


移动文件

找出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(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 栈与队列实战真题训练

    Java 栈与队列实战真题训练

    在编写程序的时候,对于栈与队列的应用需要熟练的掌握,这样才能够确保写出来的代码有质量。本文小编就以几个题目详细说说Java中的栈与队列,需要的朋友可以参考一下
    2022-04-04
  • IDEA修改SVN地址的实现

    IDEA修改SVN地址的实现

    如果你正在使用SVN进行版本控制,并且需要更改你的SVN地址,那么这篇文章将为你提供必要的步骤和指导,感兴趣的可以了解一下
    2023-12-12
  • java实现计算器功能

    java实现计算器功能

    这篇文章主要为大家详细介绍了java实现计算器功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • Mybatis-Plus条件构造器的具体使用方法

    Mybatis-Plus条件构造器的具体使用方法

    这篇文章主要介绍了Mybatis-Plus条件构造器的具体使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • java gui详解贪吃蛇小游戏实现流程

    java gui详解贪吃蛇小游戏实现流程

    刚开始学JAVA GUI,就练手写了一个小时候经常在诺基亚上玩的一个小游戏__贪吃蛇.做的比较简单,但还是可以玩的.感兴趣的朋友快来看看吧
    2021-11-11
  • 手写redis@Cacheable注解 参数java对象作为key值详解

    手写redis@Cacheable注解 参数java对象作为key值详解

    这篇文章主要介绍了手写redis@Cacheable注解 参数java对象作为key值详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Spring Boot集成Druid数据库连接池

    Spring Boot集成Druid数据库连接池

    这篇文章主要介绍了Spring Boot集成Druid数据库连接池,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Java实现企业微信消息推送功能的详细步骤

    Java实现企业微信消息推送功能的详细步骤

    这篇文章主要介绍了Java实现企业微信消息推送功能,本文图文实例代码相结合给大家介绍的非常详细,需要的朋友可以参考下
    2022-04-04
  • Java中方法的使用、重载与递归的详细介绍

    Java中方法的使用、重载与递归的详细介绍

    前面我们提到了方法需要参数类型,但是如果我们需要用一个函数同时兼容多种参数的情况应该怎么办呢? 这里就可以使用到方法重载,对Java中方法的使用、重载与递归相关知识感兴趣的朋友一起看看吧
    2021-11-11
  • java 并发编程之共享变量的实现方法

    java 并发编程之共享变量的实现方法

    这篇文章主要介绍了java 并发编程之共享变量的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09

最新评论