File 相关删除、遍历等

来源:互联网 发布:广州sql培训班 编辑:程序博客网 时间:2024/06/08 14:04

1、File基本属性

package com.example;import java.io.File;public class MyFileLib {    public static void main(String[] args){        File file = new File("test.txt"); //创建一个文件,表示一个文件        System.out.println("文件名称:"+file.getName());//获取文件名称        System.out.println("文件相对路径:"+file.getPath());//获取文件相对路径        System.out.println("文件绝对路径:"+file.getAbsolutePath());//获取文件绝对路径        System.out.println("文件父路径:"+file.getParent());//获取父路径        System.out.println(file.canRead()?"文件可读":"文件不可读");//判断文件是否可度        System.out.println(file.canWrite()?"文件可写":"文件不可写");//判断文件是否可写        System.out.println(file.isFile()?"是一个文件":"不是一个文件");//判断是否是一个文件        System.out.println(file.isDirectory()?"是一个目录":"不是一个目录");//判断是否是一个目录        System.out.println(file.isAbsolute()?"是一个绝对路径":"不是绝对路径");//是不是一个绝对路径        System.out.println("最后修改时间为:"+file.lastModified());//最后修改时间        System.out.println("文件大小为:"+file.length()+"bytes");//获取文件大小        System.out.println("是否成功删除"+file.delete());//删除成功否    }}

2、遍历当前目录下文件

package com.example;import java.io.File;//遍历一个目录下所有文件及文件夹public class MyListFile {    public  static void main(String [] args) throws  Exception{        File file = new File("/home/lumeng/Downloads/studio_app/FactoryMode"); //创建file对象        if (file.isDirectory()) {   //判断File对象对应的目录是否存在            String [] names = file.list(); //获取目录下的所有文件的文件名            for(String name:names) {                System.out.println(name); //输出文件名            }        }    }}

3、筛选.java结尾的文件

package com.example;import java.io.File;import java.io.FilenameFilter;//获取当前目录下以.java结尾的文件public class MyFilterFile {    public static void main (String [] args) throws Exception{        //创建File对象        File file = new File("/home/lumeng/Downloads/studio_app/FactoryMode/");        //创建过滤器对象        FilenameFilter filter = new FilenameFilter() {            //实现accept 方法            @Override            public boolean accept(File dir, String name) {                File currFile = new File(dir, name);                //如果文件名是以.java结尾返回true,否则返回false                if (currFile.isFile() && name.endsWith(".java")) {                    return true;                } else {                    return false;                }            }        };        if (file.exists()){  //判断file对象对应的目录是否存在            String [] lists=file.list(filter);//获得过滤后的所有的文件数组            for (String name :lists) {                System.out.println(name);            }        }    }}

4、遍历目录下所有文件

package com.example;import java.io.File;public class MyListAllFile {    public static void main (String [] args){        File file = new File("/home/lumeng/Downloads/studio_app/FactoryMode/"); //创建一个代表目录的File对象        fileDir(file); //调用FileDir递归方法    }    public static  void fileDir(File dir){        File[] files=dir.listFiles();//获取表示目录下所有文件的数组        for(File file:files) { //遍历所有子目录和文件            if (file.isDirectory()){                fileDir(file); //如果是目录,递归调用fileDir()            }            System.out.println(file.getAbsolutePath());  //输出文件绝对路径        }    }}

5、删除文件和目录

package com.example;import java.io.File;public class MyFileDelete {    public static void main(String [] args) {        File file = new File("/home/lumeng/Downloads/studio_app/FactoryMode/"); //创建一个代表目录的File对象        deleteDir(file);//调用deleteDir方法删除    }    public static void deleteDir(File dir){        if (dir.exists()){ //判断传入的File对象是否存在            File[] files = dir.listFiles(); //得到File数组            for(File file : files){  //遍历所有的子目录和文件                if (file.isDirectory()){                    deleteDir(file);                } else {                    file.delete();//如果是文件删除                }            }            dir.delete();//删除完目录里面的文件后,就删除这个目录        }    }}

参考文档:
Java基础入门 传智博客高教产品研发部 

本人郑重声明,本博客所著文章、图片版权归权利人持有,本博只做学习交流分享所用,不做任何商业用途。访问者可將本博提供的內容或服务用于个人学习、研究或欣赏,不得用于商业使用。同時,访问者应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人的合法权利;如果用于商业用途,须征得相关权利人的书面授权。若以上文章、图片的原作者不愿意在此展示內容,请及时通知在下,將及时予以刪除。

阅读全文
0 0
原创粉丝点击