String id = filedda.getText();
String pass= filedda1.getText();
try {
File inputFile = new File("E:/yoo.txt");
File tempfile = new File("E:/mytempfile.txt");
BufferedReader reader = new BufferedReader(new FileReader(inputFile));
BufferedWriter writer = new BufferedWriter(new FileWriter(tempfile));
String CurrentLine;
while((CurrentLine = reader.readLine())!=null){
if(CurrentLine.contains(id+pass)){
CurrentLine= CurrentLine.replace(id+pass, "");
}
writer.write(CurrentLine);
reader.close();
writer.close();
inputFile.delete();
tempfile.renameTo(inputFile);
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
我想要它做的是:它会从文件中删除id + pass字符串。难以从Java文本文件中删除行
它做正确,如果情形是一样,
abc
cde
而且我id+pass= cde
文件输出:abc
但如果id+pass= abc
,那么整个文件输出变得一无所有。
你正在关闭每一行的流。 – J4v4 2014-08-29 15:50:50