好吧,美丽的星期五。File is coming!位于java.io中的对于文件和目录操作的类,他提供了对目录和文件的创建,删除和重命名等操作。

  一、文件创建createNewFile()/目录创建mkdir()/mkdirs()。

import java.io.File;import java.io.IOException;public class FileTest {    public static void main(String[] args) {        File fdir=new File("d:/dream/right");        //File f2=new File("d:/dream/right/left");        File f = new File("d:/dream/tomorrow.txt");        fdir.mkdir();        //f2.mkdirs();创建一系列文件夹。        if (f.exists()) {            f.delete();        } else {            try {                f.createNewFile();            } catch (IOException e) {                e.printStackTrace();            }        }    }}

运行程序会在D盘得到文件夹tomorrow.txt文件。上面的代码中提供了一个exists()的方法,用来判断目录或文件是否存在。

 二、删除delete()。仔细观察你的d:/dream包,你会发现,当你反复运行程序时,tomorrow.txt出现间断的存在的现象。这是为什么呢?看到程序11行的位置f.delete(),对了,就是它,用来对于文件的删除操作。

 三、isFile()/isDirectory()。用来判断路径名表示的文件是否是一个文件/目录。可以动手试一下。它们都返回一个Boolean值。

 四、listFiles()。返回指定路径下的的文件。

public class FileTest2 {    public static void main(String[] args) {        File f = new File("d:/dream");        FileTest2.list(f);    }    public static void list(File f) {        File[] fileArr = f.listFiles();        for (File file : fileArr) {            if (file.isDirectory()) {                System.out.println(file.getName());                list(file);            } else {                System.out.println(file);            }        }    }}

动手试一下吧。

 五、最后将一个文件过滤器

public static void list(File f) {        File[] fileArr = f.listFiles(new FileFilter() {            @Override            public boolean accept(File p) {                if (p.getName().endsWith(".txt"))                    return true;                else                    return false;            }        });        for (File file : fileArr) {            if (file.isDirectory()) {                System.out.println(file.getName());                list(file);            } else {                System.out.println(file);            }        }

listFiles()方法中传入了一个FileFilter的实例对象,通过它的accept方法实现文件过滤。

 好了,就说这么多,3Q~~~~