zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Java 目录操作三(在指定目录中查找某字母开头文件、获取系统根目录、获取当前工作目录、遍历目录)

JAVA文件遍历系统 操作 获取 目录 指定
2023-09-11 14:14:47 时间
import java.io.*;
 
class Main {
   public static void main(String[] args) {
      File dir = new File("C:");
      FilenameFilter filter = new FilenameFilter() {
         public boolean accept
         (File dir, String name) {
            return name.startsWith("b");
        }
      };
      String[] children = dir.list(filter);
      if (children == null) {
         System.out.println("目录不存在或它不是一个目录");
      } 
      else {
         for (int i=0; i < children.length; i++) {
            String filename = children[i];
            System.out.println(filename);
         }
      } 
   }
}

以上代码运行输出结果为:

build
build.xml

 

获取系统根目录

import java.io.*;
 
class Main{
    public static void main(String[] args){
        File[] roots = File.listRoots();
        System.out.println("系统所有根目录:");
        for (int i=0; i < roots.length; i++) {
            System.out.println(roots[i].toString());
        }
    }
}

以上代码运行输出结果为:

系统所有根目录:
C:\
D:\
E:\
F:\
G:\
H:\

 

获取当前工作目录

class Main {
    public static void main(String[] args) {
        String curDir = System.getProperty("user.dir");
        System.out.println("你当前的工作目录为 :" + curDir);
    }
}

以上代码运行输出结果为:

你当前的工作目录为 :/www/java

 

遍历目录

import java.io.File;
 
public class Main {
    public static void main(String[] argv) throws Exception {
        System.out.println("遍历目录");
        File dir = new File("/www/java"); //要遍历的目录
        visitAllDirsAndFiles(dir);
    }
    public static void visitAllDirsAndFiles(File dir) {
        System.out.println(dir);
        if (dir.isDirectory()) {
            String[] children = dir.list();
            for (int i = 0; i < children.length; i++) {
                visitAllDirsAndFiles(new File(dir, children[i]));
            }
        }
    }
}

以上代码运行输出结果为:

遍历目录
/www/java
/www/java/Car.class
/www/java/FileUtil.class
/www/java/FileUtil.java
/www/java/HelloWorld.class
/www/java/HelloWorld.java
/www/java/HelloWorldDebug.class
/www/java/HelloWorldDebug.java
/www/java/Main$1.class
/www/java/Main.class
/www/java/Main.java
/www/java/MainClass.class
/www/java/MainClass.java
/www/java/MyClass.class
/www/java/outfilename
/www/java/test.log