文件不会从临时文件传输回原始文件

时间:2015-04-23 22:01:47

标签: java file

这是我的代码的摘录。 我搜索了Stack Overflow并完成了所有的建议,即删除原始文件并将temp重命名为original,我也尝试过writer.flush。这是.txt文件的样子。

GradeEnter:

1) Bob Do, Comp, 18
2) Matt Well, computing, 100
3) Adam Smith, Computing, 99
4) Mike Frank-Jones, Drama, 69

MyTempFile:

Matt Well, computing, 100
Adam Smith, Computing, 99
Mike Frank-Jones, Drama, 69

成绩输入(删除后):

Bob Do, Comp, 18
Matt Well, computing, 100
Adam Smith, Computing, 99
Mike Frank-Jones, Drama, 69

这是为什么?感谢

    File deleteRecord = new File("GradeEnter.txt");
    reader = new BufferedReader(new FileReader(deleteRecord));

    File tempFile = new File("myTempFile.txt");
    BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile));

    Scanner scanner = new Scanner(System.in);
    System.out.print("To delete, please Enter First Name: ");
    firstNameDelete = scanner.nextLine();
    System.out.print("Please Enter Surname: ");
    lastNameDelete = scanner.nextLine();

    String currentLine;

    while((currentLine = reader.readLine()) != null) {
        if(currentLine.contains(firstNameDelete) && currentLine.contains(lastNameDelete)) continue;
        writer.write(currentLine);
        writer.newLine();
    }
    reader.close(); 
    writer.close();
    deleteRecord.delete();
    tempFile.renameTo(deleteRecord);

0 个答案:

没有答案