zoukankan      html  css  js  c++  java
  • 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:abc1.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"));
                }
            }
        }
    }

     

     
  • 相关阅读:
    RPC学习
    json
    jsf
    ajax分析
    async分析
    web后台
    servlet和CGI区别(转)
    forward和redirect
    (转)jvm
    Async分析
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/4389298.html
Copyright © 2011-2022 走看看