Rumah >Java >Javabermula >详细介绍Java中的File类
构造方法
(推荐教程:java入门教程)
File f = new File("文件路径") File f = new File("parent","child")
创建一个文件:
//在工作空间目录下创建a.txt的文件 File f = new File("a.txt"); f.createNewFile(); 在G:\路径下创建一个a.txt的文件.如果已经有的话这不会重新创建 File f = new File("G:\\a.txt"); f.createNewFile(); 如果路径写成\\a.txt,会在盘符下创建新的文件 File f = new File("\\a.txt"); f.createNewFile();
创建一个文件夹:
//在工作空间目录下创建a.txt的文件夹 File f = new File("a"); f.mkdir(); 在G:\路径下创建一个a.txt的文件夹.如果已经有的话这不会重新创建 File f = new File("G:\\a"); f.mkdir(); 如果路径写成\\a.txt,会在盘符下创建新的文件夹 File f = new File("\\a"); f.mkdir(); 在g盘下创建文件夹a,a 下创建一个b文件夹 File f = new File("G:\\a\\b"); f.mkdirs(); //注意mkdirs(),创建多个文件夹
new File 的区别:
File f = new File("a");//此时f是文件夹 File f = new File("parent","child"); //此时f是文件,parent文件夹下的文件 注意:此时会在盘符根目录下创建文件夹 或文件 d File f = new File("", "d"); f.createNewFile(); // f.mkdir()
(视频教程推荐:java视频教程)
list()方法与listFiles()方法区别:
f.list(); 返回String[]数组.里面包含了f一级目录下的文件和文件夹名. 注意: 如果f:\\a\\b.那么b不会包含在数组中 f.listFiles() 返回File[]数组.里面包含了f一级目录下的文件和文件夹. 注意: 如果f:\\a\\b.那么b不会包含在数组中
文件名过滤器 FilenameFilter
在f1的文件夹中过滤出后缀名为 "txt"的文件
代码实现:
String[] s = f1.list(new FilenameFilter() { /** * dir 需要被过滤的文件夹 name 需要别被过滤的文 件名 .此名是相对路径 * 如果返回true 则证明是符合条件的文件.会将改文件返回到数组中 */ @Override public boolean accept(File dir, String name) { File f = new File(dir, name); if (f.isDirectory()) { return false; } if (f.getName().endsWith("txt")) { return true; } return false; } });
文件过滤器 FileFilter FilenameFilter
在f1文件夹中过滤出文件长度大于20M的文件.
代码实现:
File[] fs = f1.listFiles(new FileFilter() { /** * pathname 表示要被过滤的文件,注意:不是文件名 * 返ture 证明是符合条件的文件 */ @Override public boolean accept(File pathname) { if (pathname.length() > 1024 * 1024 * 20) { return true; } return false; } });
绝对路径与相对路径
绝对路径 G:\\a.txt 相对路径 a.txt. //相对于工作空间的路径( G:\andirodWorkspace\a.txt)
Atas ialah kandungan terperinci 详细介绍Java中的File类. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!