如题所述 类似于脚本 但是不用Linux语言编译bash脚本 纯java的话该如何实现上述功能
Idea编译器下用Java语言编写一个类似于脚本的程序,可以同时批量获取不同路径下的.java和.class和.xml文件 并将其粘贴到与之前的目录层级结构相同的目标目录下
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- yhmoling 2023-10-17 11:50关注
这个递归遍历你指定的文件夹下所有的子目录,将所有符合条件的文件加到list,然后直接将符合条件的文件移动过去就好;
简单代码示例/** * @param sourceDir 源目录 * @param tarDir 目标路径 * @param project 项目名 */ public static void move(String sourceDir, String tarDir, String project) throws IOException { File file = new File(sourceDir); List<File> subFile = findSubFile(file, Arrays.asList("class")); Path tarFile; for (File f : subFile) { String absolutePath = f.getAbsolutePath(); String[] split = absolutePath.split(project); tarFile = Paths.get(tarDir, project, split[1]); tarFile.toFile().mkdirs(); Files.copy(f.toPath(), tarFile, StandardCopyOption.REPLACE_EXISTING); } } public static List<File> findSubFile(File file, List<String> suffix) { List<File> fileList = new ArrayList<>(); if (file.isDirectory()) { for (File listFile : file.listFiles()) { fileList.addAll(findSubFile(listFile, suffix)); } }else { if (suffix.contains(file.getName().split("\\.")[1])) { fileList.add(file); } } return fileList; }
解决 无用评论 打赏 举报
悬赏问题
- ¥30 这是哪个作者做的宝宝起名网站
- ¥60 版本过低apk如何修改可以兼容新的安卓系统
- ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
- ¥50 有数据,怎么建立模型求影响全要素生产率的因素
- ¥50 有数据,怎么用matlab求全要素生产率
- ¥15 TI的insta-spin例程
- ¥15 完成下列问题完成下列问题
- ¥15 C#算法问题, 不知道怎么处理这个数据的转换
- ¥15 YoloV5 第三方库的版本对照问题
- ¥15 请完成下列相关问题!