有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java将记录写入文件的新行

每次代码运行时,我都希望将新记录添加到新行

正如添加新记录时一样,它将覆盖前一行

private void writeFile() {
    String FILENAME = g.getText();
    String content = results;
    FileOutputStream fos = null;
    try {
        fos = openFileOutput(FILENAME, MODE_PRIVATE);
        fos.write(content.getBytes());
        Toast.makeText(getApplicationContext(), "File Saved", 0).show();
    } catch (IOException e) {
        e.printStackTrace();
    }


}

共 (1) 个答案

  1. # 1 楼答案

    在写入数据时,还需要写入“换行符”:

    private void writeFile() {
        String FILENAME = g.getText();
        String content = results;
        FileOutputStream fos = null;
        try {
            fos = new FileOutputStream(file);
            fos.write(content.getBytes());
            fos.write(System.getProperty("line.separator"));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    

    但是要小心这样写二进制数据。最好使用例如BufferedWriter来写入字符串数据:

    BufferedWriter writer = new BufferedWriter(new FileWriter("filename"));
    writer.write("Hello world!");
    writer.newLine();