编写程序,运行时输入文件夹名,程序会把该文件夹下的所有拓展名为.java 的文件拓展名改为.txt
时间: 2024-12-17 16:49:27 浏览: 8
要实现这个功能,你可以使用Java的`java.io`包来处理文件操作,尤其是`File`, `Path`, 和`Files`类。以下是一个简单的示例程序,它接收命令行参数(文件夹路径),遍历文件夹并将`.java`文件名更改为`.txt`:
```java
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class RenameJavaToTxt {
public static void main(String[] args) {
if (args.length != 1) {
System.out.println("Usage: java RenameJavaToTxt <folder_path>");
return;
}
String folderPath = args[0];
File directory = new File(folderPath);
// 检查是否存在指定的目录
if (!directory.exists() || !directory.isDirectory()) {
System.out.println("Invalid folder path: " + folderPath);
return;
}
renameJavaFiles(directory);
}
private static void renameJavaFiles(File directory) {
try {
for (File file : directory.listFiles((dir, name) -> name.endsWith(".java"))) {
Path sourcePath = Paths.get(file.getAbsolutePath());
Path targetPath = sourcePath.getParent().resolve(sourcePath.getFileName().replaceFirst("\\.java$", ".txt"));
Files.move(sourcePath, targetPath);
System.out.printf("Renamed %s to %s%n", file.getName(), targetPath);
}
} catch (Exception e) {
System.err.println("Error renaming files: " + e.getMessage());
}
}
}
```
在这个程序中,我们首先检查给定的是否是一个有效的文件夹路径,然后遍历文件夹中的每个文件。如果文件名字以`.java`结尾,我们就将其重命名为`.txt`。我们使用`Files.move()`方法进行实际的文件重命名。
**注意事项:**
1. 运行此程序前确保你的用户具有足够的权限访问并修改文件。
2. 如果文件夹很大或包含子文件夹,可能需要考虑线程安全和递归处理。
阅读全文