Flutter:如何在应用程序卸载时保持文件内容?

06odsfpq  于 2023-01-06  发布在  Flutter
关注(0)|答案(1)|浏览(234)

我创建了一个类来将数据存储在一个文件中,这样我就可以在下次打开应用程序时再次引用这些数据。
示例代码如下:

static Future<String> get localPath async {
    final directory = await getApplicationDocumentsDirectory();
    return directory.path;
  }
static Future<File> get localFile async {
    final prefs = await SharedPreferences.getInstance();
    final String fileName = 'file01';
    final path = await localPath;
    return File('$path/$fileName.txt');
  }
static Future<String> readContent() async {
    try {
      final file = await localFile;
      String contents = await file.readAsString();
      return contents;
    } catch (e) {
      return "null";
    }
  }

写入方法

static Future<File> writeContent(String content) async {
    final file = await localFile;
    var result = readContent();
    return file.writeAsString('$content', mode: FileMode.append);
  }

writeContent()方法将在应用程序中的某些事件上触发。如果文件不存在,它将创建一个文件,如果文件存在,则追加一个新数据。
在我卸载了应用程序之后,readContent()给了我一个"null"的响应。你知道如何持久化这个文件吗?

xghobddn

xghobddn1#

据我所知,卸载应用程序会删除与之关联的所有文件和目录。
我会将这些文件存储在数据库中,如果您在本地需要它们,可以在用户第一次打开应用程序时下载它们。

相关问题