博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA中的File类
阅读量:6612 次
发布时间:2019-06-24

本文共 3580 字,大约阅读时间需要 11 分钟。

package testPage;import java.io.File;import java.io.FilenameFilter;import java.io.IOException;/** * File类有一个listFiles(FileNameFilter filter). * 只需要实现一个简单的filter就可以找到满足fileter条件的所有文件。 * 例如我要在E:\data\file_selector_test 目录下面查找以.txt结尾的文件,我可以这么做。见下例。 * @author Administrator * */public class FileNameSelector implements FilenameFilter {    String extension = ".";    public FileNameSelector(String fileExtensionNoDot) {        extension += fileExtensionNoDot;    }    @Override    public boolean accept(File dir, String name) {        return name.endsWith(extension);    }        public static void main(String[] args) {                File directory = new File("E:\\test\\file_selector_test");        //listFiles()列出所有文件        File[] files = directory.listFiles();        System.out.println("\n目录" + directory.getName() + "下的所有文件");        for (File file : files) {            System.out.print("  " + file.getName());        }        //listFiles(FileNameFilter filter)列出所有.txt文件        File[] txtFiles = directory.listFiles(new FileNameSelector("txt"));        System.out.println("\n目录" + directory.getName() + "下的.txt文件");        for (File file : txtFiles) {            System.out.print("  " + file.getName());        }        //isDirectory()判断是否为文件目录        if(directory.isDirectory()){            System.out.println(directory.getPath()+" is Directory");        }        //isFile()判断是否为文件        if(directory.isFile()){            System.out.println(directory.getPath()+" is File");        }                //File.separator输出不同的系统中斜杠的方向        //在windows中斜杠的方向是向右斜的\\        //在Linux  中斜杠的方向是向左斜的//        System.out.println("File.separator:"+File.separator);        File f= new File("e:" + File.separator + "test" + File.separator +"file_selector_test"+File.separator+ "io.txt");        try {            //createNewFile()方法:创建指定文件夹下的文件,如果文件夹不存在会报"找不到指定路径"错误,应该首先手动创建该文件夹。返回值为boolean            //若没有该文件,创建成功返回true;若又该文件则创建失败返回false            System.out.println(f.createNewFile());        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }                //delete()方法:删除一个文件或者整个文件夹,返回值为布尔类型        //如果删除的是文件夹,必须保证是一个空文件夹,否则删除失败        File f0 = new File("E:\\test\\file_selector_test\\io.txt");        boolean boo=f0.delete();        if(boo){            System.out.println("成功删除文件");        }else{            System.out.println("删除失败");        }        //调用创建的方法进行删除文件夹以及该文件夹下的所有文件        deleteDirectory(new File("E:\\test\\file_selector_test2"));                File f1 = new File("e:" + File.separator + "test"+File.separator+"io.txt");        //getPath()方法:将此抽象路径名转换为一个路径名字符串        System.out.println(f1.getPath());        //getParent()方法:返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 nul        System.out.println(f1.getParent());        if(f1.exists()){            f1.delete();        }        else{            try{                System.out.println(f1.createNewFile());            }catch(Exception e){}        }                //list()方法:返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录,列出的仅是名称。        File f2 = new File("E:\\test\\file_selector_test");        String[] str = f2.list();        for(int i=0;i
0){ for(int i=0;i
< file.length;i++){ //继续把内容传入到findAllFiles方法之中进行验证 findAllFiles(file[i]); } }catch(Exception e){} } else{ System.out.println(f); } } }

本文参考资料:

http://blog.sina.com.cn/s/blog_7a27a9bf0100s887.html

http://www.blogjava.net/tovep/archive/2010/11/07/io.html

转载地址:http://vexso.baihongyu.com/

你可能感兴趣的文章
【转】关于大型网站技术演进的思考(十二)--网站静态化处理—缓存(4)
查看>>
积跬步,聚小流------Bootstrap学习记录(1)
查看>>
HDUPhysical Examination(贪心)
查看>>
苹果公司的产品已用完后门与微软垄断,要检查起来,打架!
查看>>
Android官方架构组件LiveData: 观察者模式领域二三事
查看>>
你必须知道的HTTP基本概念
查看>>
Android ContentProvider调用报错"Bad call:..."及相关Binder权限问题分析
查看>>
基本shell脚本的编辑及变量
查看>>
加密和解密 tar
查看>>
将datatable 保存为 Excel文件(高效率版本)
查看>>
C/C++五大内存分区(转)
查看>>
springmvc_1(hello world)
查看>>
0.随笔——读后感
查看>>
CentOS 6.5下PXE+Kickstart无人值守安装操作系统
查看>>
xtrapivotcontrol 控件用法及相关属性
查看>>
Shell脚本 常用命令总结 二
查看>>
JS模拟select下拉菜单
查看>>
vmware workstation14永久激活密钥分享
查看>>
iOS 多线程 之 GCD(大中枢派发)(一)
查看>>
Myeclipse中打开接口实现类的快捷键
查看>>