要求
因为只是一个小程序,所以代码全部放在同一个包下
此博文文字内容较少,因为注释比较多,如果有问题可私信博主
效果展示
此程序会生成一个 result 文件夹及 it.txt 文件,分析的内容保存到此处
Utils 工具类
import java.io.File;
import java.util.Scanner;
public class Utils {
// 显示菜单信息
public static void showMenu() {
System.out.println("----------MENU----------");
System.out.println("1. 分析目录中的源文件程序");
System.out.println("2. 查看分析结果");
System.out.println("0. 退出程序");
System.out.println("------------------------");
}
// 判断输入目录是否正确
public static File getPath() {
String pathName = null;
File root = null;
while (true) {
System.out.print("请输入目录路径:");
Scanner scanner = new Scanner(System.in);
pathName = scanner.nextLine();
root = new File(pathName);
if (root.isFile() || !root.exists()) {
System.out.println("[" + pathName + "]不是目录名或不存在!");
} else {
break;
}
}
return root;
}
// 要求输入的是数字
public static int getChoice() {
Scanner scanner = new Scanner(System.in);
int choice;
// 输入的数据可能有误
try {
choice = scanner.nextInt();
} catch (Exception e) {
System.out.println("输入有误!请重新输入");
return getChoice();
}
return choice;
}
}
Main
import java.io.File;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
public class Main {
public static void main(String[] args) {
while (true) {
Utils.showMenu();
System.out.print("请选择:");
int choice = Utils