public void removeLine(String s) throws IOException, FileNotFoundException{
File tempFile = new File("temp.txt");
FileInputStream reader = new FileInputStream(sharkFile);
Scanner scanner = new Scanner(reader);
BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile, true));
String currentLine;
while(scanner.hasNextLine()){
currentLine = scanner.nextLine();
String trimmedLine = currentLine.trim();
System.out.println(trimmedLine);
trimmedLine.equals(sharkName);
if(trimmedLine.equals(sharkName)) continue;
writer.write(currentLine + System.getProperty("line.separator"));
}
scanner.close();
scanner = null;
reader.close();
writer.flush();
writer.close();
writer = null;
System.gc();
if(!sharkFile.delete()){
System.out.println("Could not delete file d");
return;
}
if(!tempFile.renameTo(sharkFile)){
System.out.println("Could not rename file");
return;
}
}
Я прошел через многочисленные потоки в stackoverflow и внедрил эти изменения, но мой файл просто не удалит. Цените помощь.Почему мой файл не удаляется независимо от того, почему я это делаю?
Вы проверили права пользователя? Какую ошибку вы получаете? – johan855
Вы поймаете исключение IO где-нибудь, если оно есть? –
Используйте 'Files.delete()'; по крайней мере, вы получите осмысленное исключение при неудаче. Кроме того, почему 'System.gc()'? – fge