Я хочу удалить содержимое файла после того, как определенная строка сделает то, что я сделал, я создал временный файл и скопировал данные в него и после завершения переименования файла шляпы.Удалить Содержимое файла после совпадения строки в виде частиц
Но когда я попытался, я не могу переименовать файл и не удалять старый файл. Мой код приведен ниже и выводит удивительно, как можно вызывать последнюю строку, если она находится в цикле.
ОБНОВЛЕНО
File inputFile = new File(propertiesFilePath+"/"+fileName);
File tempFile = new File(propertiesFilePath+"/tempfile.properties");
BufferedWriter writer=null;
BufferedReader reader =null;
System.out.println("Input file "+inputFile.exists()+" "+tempFile.exists());
try{
reader = new BufferedReader(new FileReader(inputFile));
writer = new BufferedWriter(new FileWriter(tempFile));
String currentLine=null;
while((currentLine = reader.readLine()) != null) {
if(currentLine.contains(KEY_STORE)) break;
System.out.println("Lines "+currentLine);
writer.write(currentLine);
}
}catch(Exception e){
System.out.println("Exception in deleting config");
}finally{
writer.close();
reader.close();
}
System.err.println("Inpute file delete "+inputFile.delete());
return tempFile.renameTo(inputFile);
выход:
Input file true true
Lines # ----------------------------------------------
Inpute file delete false Renamed false
Lines # ---------------------------------------------------
Lines #
Lines # ----------------------------------------------------
Lines #
Lines # --------------------------------------------------------
Lines # ---------------------------------------------------------
Lines # -------------------
Lines #
Lines # ---------------------------------------------------------------------------------
-----------------------
Lines #------------------------------------------------------------------
Lines # ----------------------
Lines -----------------------
Lines
я replced текст, (------), но как можно напечатать SYSOUT, который находится за пределами представление перед завершением цикла.
Есть ли лучший способ достичь того, что я хочу.
Какое исключение вы получаете в блоке catch? –