【问题标题】:Should I delete the file in Internal memory on Android App?我应该在Android App上删除内存中的文件吗?
【发布时间】:2016-04-28 01:04:49
【问题描述】:

我的 Android 模拟器无法在我的计算机上运行,​​目前我正在真实设备上测试我的应用程序。这是我的问题。

我将一些文本作为文本文件(让我们将其命名为 data.txt)保存在应用程序的内存中。我将与已安装设备上的某些应用共享此文件。

需要频繁地将数据保存到文件中(比如一天两次)。每次数据都以相同的文件名 (data.txt) 保存。

我正在使用FileProvider 与其他应用程序共享文件。

所以这是场景。第一组数据保存在 data.txt 下。分享后我应该删除这个文件吗?以便第二组数据以相同的文件名保存或应用程序是否自动处理此问题(只需将包含第一数据的文件 data.txt 替换为文件 data .txt 包含第二个数据)?

【问题讨论】:

  • 你能贴出你的代码吗?你在哪里共享文件@Traveller
  • 这取决于你如何写入文件(data.txt)如果你append然后你必须在分享后清除/删除文件,如果你只是write进入文件,然后它将被 API 覆盖

标签: java android android-fileprovider


【解决方案1】:

如果你查看FileOutputStream(String path, boolean append)的构造函数,当你写入代码时,文件中的数据将被覆盖,布尔值用于处理你想要追加文件或覆盖现有文件(默认情况下,此值为false 表示它肯定会覆盖数据)。所以我认为没有必要删除你的文件

【讨论】:

  • 目前,我正在覆盖现有文件。覆盖文件(文本文件或图像文件或其他任何文件)是否会创建某种缓存或某种空间消耗? (忍受我的愚蠢问题 - 只是想纠正我的理解)
  • 缓存什么我很抱歉不能理解你?好吧,它只是删除该文件中的所有数据,然后将所有数据从输出流刷新到该文件。
  • 我认为您应该阅读有关 IO 流和诸如 FileInputStream 和 Fileoutoutstream 等桥接类的更多信息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-12
  • 1970-01-01
  • 2016-12-02
  • 1970-01-01
相关资源
最近更新 更多