3
私は、ファイルを読み込み、渡された文字列がtempという名前の新しいファイルを作成するという方法を持っているプロジェクトに取り組んでいます。元のものを削除し、tempの名前を元の名前に変更します)。エラーなく実行できますが、新しいファイルには何も出力されません。私は通常デバッグを行い、エラーが行に新しいファイルに書き込む行にあることを発見しました。私は何か間違ったことを言った小さな誤りを作ったように感じる。それは素晴らしいことだ解くすべてのヘルプは...ここJavaのファイルを読み込み、行を削除するとエラーが発生する
はあなたがout
(BufferedReaderの)に近い呼び出す必要がありますコード
public static void LineDelete(String Filename, String Content) throws IOException {
try {
File flights = new File("AppData/" + Filename);
File temp;
temp = new File("AppData/temp.txt");
FileWriter fstream;
BufferedWriter out;
try (Scanner sc = new Scanner(flights)) {
fstream = new FileWriter("AppData/temp.txt", true);
out = new BufferedWriter(fstream);
boolean exis = temp.exists();
if (exis) {
temp.delete();
temp = new File("AppData/temp.txt");
boolean createNewFile = temp.createNewFile();
} else {
boolean creatNewFile = temp.createNewFile();
}
String f;
while (sc.hasNextLine()) {
f = sc.nextLine();
if (!f.equals(Content)) {
out.newLine();
out.write(f);
}
}
}
fstream.close();
//out.close();
flights.delete();
File flightsn = new File("AppData/" + Filename);
temp.renameTo(flightsn);
} catch (FileNotFoundException ex) {
Logger.getLogger(FileWrite.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
[OK]をする必要があり... – Charlie
私は少し問題を把握[OK]を、一つの他の質問、ときに空の行を削除します。空の行をすべて削除する方法はありますか? – Charlie
ここで閉じる前に、削除して名前を変更しています! –