android开发: 根据指定包名路径遍历app内自己写的类 有示例代码吗
以下是一个遍历指定包名路径下自己写的类的示例代码:
import java.io.File;
public class ClassTraverser {
private static final String PACKAGE_NAME = "com.example.app"; // 替换为你的包名
public static void main(String[] args) {
File packageDir = new File("app/src/main/java/" + PACKAGE_NAME.replace(".", "/"));
traverseClasses(packageDir);
}
private static void traverseClasses(File dir) {
File[] files = dir.listFiles();
if (files != null) {
for (File file : files) {
if (file.isDirectory()) {
traverseClasses(file);
} else if (file.getName().endsWith(".java")) {
String className = file.getName().replace(".java", "");
String packageName = file.getParent().replace("app/src/main/java/", "").replace("/", ".");
String fullClassName = packageName + "." + className;
if (fullClassName.startsWith(PACKAGE_NAME)) {
System.out.println(fullClassName);
}
}
}
}
}
}
上述代码中,我们使用递归方式遍历指定包名路径下的所有文件。通过判断文件的扩展名为 .java,并且文件的路径以指定的包名开头,我们就可以判定该文件是我们自己写的类,然后打印出该类的完整类名。你可以将代码中的 PACKAGE_NAME 替换为你自己的包名路径
原文地址: https://www.cveoy.top/t/topic/h49m 著作权归作者所有。请勿转载和采集!