Java 文本文件字符串替换工具:StringReplace
Java 文本文件字符串替换工具:StringReplace
本程序使用 Java 编写,可以将指定文本文件中的特定字符串替换为目标字符串。程序运行时,文本文件路径、源字符串和目标字符串都作为命令行参数传入。
使用方法:
java StringReplace <文件路径> <源字符串> <目标字符串>
示例:
java StringReplace src.txt today tomorrow
该命令将文本文件 src.txt 中所有的字符串 'today' 替换为 'tomorrow'。
代码实现:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class StringReplace {
public static void main(String[] args) {
// 判断参数个数是否正确
if (args.length != 3) {
System.out.println("Usage: java StringReplace <file> <original> <target>");
return;
}
String fileName = args[0];
String original = args[1];
String target = args[2];
// 读取文件并替换字符串
try (BufferedReader br = new BufferedReader(new FileReader(fileName));
BufferedWriter bw = new BufferedWriter(new FileWriter(fileName + ".tmp"))) {
String line;
while ((line = br.readLine()) != null) {
line = line.replaceAll(original, target);
bw.write(line);
bw.newLine();
}
} catch (IOException e) {
e.printStackTrace();
}
// 替换完成后将临时文件重命名为原文件
try {
java.nio.file.Files.move(java.nio.file.Paths.get(fileName + ".tmp"), java.nio.file.Paths.get(fileName), java.nio.file.StandardCopyOption.REPLACE_EXISTING);
} catch (IOException e) {
e.printStackTrace();
}
}
}
代码说明:
- 程序首先判断参数个数是否正确,如果参数个数不为 3,则输出使用说明并退出程序。
- 读取参数,分别获取文件名、源字符串和目标字符串。
- 使用
BufferedReader和BufferedWriter读取文件内容并写入临时文件。 - 使用
replaceAll方法将文件内容中的源字符串替换为目标字符串。 - 将临时文件重命名为原文件,完成替换操作。
本程序可以方便地对文本文件进行字符串替换操作,并可根据需要进行修改和扩展。
原文地址: https://www.cveoy.top/t/topic/n2ui 著作权归作者所有。请勿转载和采集!