java - 如何在启动时将数据写入文件

标签 java android

我正在使用下面的代码将数据写入文件。

public static void writeDataToFile(final String fileName, final String fileContents) {
    try {
        File file = new File(Environment.getExternalStorageDirectory() + fileName);

        if (!file.exists()) {
            file.createNewFile();
        }
        FileWriter writer = new FileWriter(file, true);
        writer.append(fileContents);
        writer.flush();
        writer.close();
    } catch (IOException e) {
        LogUtility.logInfo(TAG, e.getMessage());
    }
}

这里FileWriter构造函数采用 boolean 值,这意味着它每次都将数据连接到文件到最后一个数据。我想要得到的是一个包含我正在执行的 Activity 日志的文件。我是通过上面提到的代码实现的。但问题是它每次总是将日志连接到最后的数据。我想要的是每次开始时都写入新日志。这样我就不会在最后一个日志的底部搜索文件。它将每天开始。任何帮助

最佳答案

您可以在 FileWriter 构造函数中将附加标志设置为 false。然后,使用 write() 函数而不是 append() 函数

FileWriter writer = new FileWriter(file, false);
writer.write(fileContents);

关于java - 如何在启动时将数据写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56379659/

相关文章:

java - 如何从应用程序内部访问 JBoss 数据目录?

java - 为什么在 Java 中应该避免 IO as Byte

android - 定期轮询服务器并将响应显示为通知

java - 使用 Retrofit 从服务器接收数据

android - ActivityResultContracts.TakePicture()

java - 将可滚动 jpanel 添加到网格布局

java - Hbase 扫描与 Mapreduce 的动态计算

java - 秘钥的 key Material 需要Hex编码吗? ( java )

android - 实现 GLSurfaceView.Renderer 问题

java - 如何组织辅助函数