用java写:需要传入一个文件a.txt的路径,读取该文件的内容,并将其中敏感词汇改为*,替换完成后将内容输出到b.txt中
时间: 2023-11-28 18:47:48 浏览: 95
以下是用Java实现的代码:
```java
import java.io.*;
public class ReplaceSensitiveWords {
public static void main(String[] args) {
String inputFilePath = "a.txt"; // 输入文件路径
String outputFilePath = "b.txt"; // 输出文件路径
String[] sensitiveWords = {"sensitive1", "sensitive2", "sensitive3"}; // 敏感词汇列表
try {
BufferedReader reader = new BufferedReader(new FileReader(inputFilePath));
BufferedWriter writer = new BufferedWriter(new FileWriter(outputFilePath));
String line;
while ((line = reader.readLine()) != null) {
for (String word : sensitiveWords) {
line = line.replaceAll(word, "*");
}
writer.write(line);
writer.newLine();
}
reader.close();
writer.close();
System.out.println("替换完成!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
该程序使用了Java的输入输出流来读取和写入文件。在读取文件时,程序逐行读取每一行,然后使用`replaceAll()`方法将敏感词汇替换为*,最后将处理后的内容写入到输出文件中。
需要注意的是,敏感词汇列表`sensitiveWords`需要根据实际情况进行修改。同时,程序中没有考虑敏感词汇出现在单词中间的情况,如"asensitivewordb"会被替换为"******",而不是"a******b"。如果需要更精确的替换,可以使用正则表达式来匹配敏感词汇。
阅读全文