使用java根据要查找txt文件的内容,在查找到值之后再末尾添加自己的内容
main方法
public static void main(String[] args) throws IOException {
String filePath = “D:\aa.txt”;
//要查找的内容
String nihao=“nihao”;
//要添加的值
String addword=“addword”;
//获取修改后的数据
List scanListPath = readFile02(filePath,nihao,addword);
BufferedWriter bw = new BufferedWriter(new FileWriter(filePath));
for (String s : scanListPath) {
bw.write(s);
bw.newLine();
bw.flush();
}
bw.close();
}
读取文本并修改内容返回修改后的list
public static List readFile02(String path,String nihao,String addword) throws IOException {
// 使用一个字符串集合来存储文本中的路径 ,也可用String []数组
List list = new ArrayList();
FileInputStream fis = new FileInputStream(path);
// 防止路径乱码 如果utf-8 乱码 改GBK eclipse里创建的txt 用UTF-8,在电脑上自己创建的txt 用GBK
InputStreamReader isr = new InputStreamReader(fis, “UTF-8”);
BufferedReader br = new BufferedReader(isr);
String line = “”;
while ((line = br.readLine()) != null) {
// 如果 t x t文件里的路径 不包含—字符串 这里是对里面的内容进行一个筛选
list.add(line);
}
for(int i=0;i<list.size();i++){
if(list.get(i).contains(nihao)){
String ww=list.get(i)+addword;
list.set(i,ww);
}
}
br.close();
isr.close();
fis.close();
return list;
}
清空文件内容
public static void clearInfoForFile(String fileName) {
File file =new File(fileName);
try {
if(!file.exists()) {
file.createNewFile();
}
FileWriter fileWriter =new FileWriter(file);
fileWriter.write("");
fileWriter.flush();
fileWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}