0
だから私は、私は次のコードでIDまたは名前に基づいてファイルのいずれかを削除したい検索された2つの変数に基づいて、Javaのテキストファイルのデータを削除する方法は?
111 Java Josh Javaaaaaaaaa J1
112 HTML Alex Html J2
を含むこのbook.txtファイルを持っている:
public void DeleteBook()
{
try
{
String bidToDelete;
System.out.println("Enter Book Name or Book ID to Delete:");
bidToDelete = sc.next();
File f = new File("C:\\Users\\HP\\Documents\\NetBeansProjects\\LMSConsole\\book.txt");
FileReader fr = new FileReader(f);
BufferedReader br = new BufferedReader(fr);
File TempFile = new File("temp.txt");
PrintWriter pw = new PrintWriter(TempFile);
String line = br.readLine();
while(line!=null)
{
System.out.println(line);
String[] wordsinline = line.split(" ");
if(wordsinline[0]||wordsinline[1].equals(bidToDelete))
{
f.delete();
pw.write(line);
TempFile.renameTo(f);
if(TempFile.renameTo(f))
System.out.println("Book has been deleted.");
else
System.out.println("Cannot delete file.");
}
else
{
pw.println(line);
}
line = br.readLine();
}
br.close();
pw.close();
}
catch(IOException ex)
{
System.out.println(ex);
}
}
流れが分離することです残りのファイルは一時的なtxtファイルに移動されます。元のファイルが削除されると、temp txtは元のtxtファイルの名前に変更されます。
エラーを生成し続けます。何かアドバイス?私はこのファイル処理の事で初心者です。ありがとう!
生成しているエラーは何ですか?単純な "エラー"だけで多くの問題をカバーしています! –
エラーがなくなりました。しかし、私はtxtファイルを削除することはできません、ちょうどtemp.txtに同じものを書き換える – Irfan