一、java文件,文件夹创建
废话不多说,简单问题, 直接看代码:
import java.io.File; public class CreateFileTest { public static void main(String[] args) throws Exception { // file表示既可以表示目录,也可以看表示文件 // 建议使用 File.separator, 不同系统的分割符号是不一样的,使用File.separator可以屏蔽这种差别 File file = new File("c:" + File.separator +"Test.txt"); // 使用creatnewFile用于创建文件,会创建一个名字Test的txt文件 System.out.println(file.createNewFile()); File file2 = new File("c:" + File.separator +"Test.txt"); // 若要创建目录 则需要使用mkdir();可以创建单级目录 // 生成一个名字为Test.txt的文件夹 System.out.println(file2.mkdir()); // 创建多级目录使用mkdirs()方法 File file1 = new File("c:" + File.separator +"hello"+File.separator+"world"); file1.mkdirs(); } }
如果创建的文件已经有了,则会返回false,创建会失败。
File即可以表示文件,也可以表示文件夹,所以 提供了File.isDirectory()和File.isFile方法用于判断File类型文件是目录还是文件。
二、获取文件,过滤文件,测试代码如下
// file.listFiles()可以列出当前所有文件盒文件夹 // list()方法返回的是字符串,而listFiles()方法返回的是File类型的对象 File file4 = new File("c:"+File.separator); File[] files = file4.listFiles(); // 同时可以利用方法重载对文件进行过滤 File[] files1 = file4.listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { if(name.endsWith(".txt")) return true; return false; } }); // 打印出来的全是以.txt结尾的文件 for (int i = 0; i < files1.length; i++) { System.out.println(files1[i].getName()); }