第一百回 如何实现文件存储二

文章目录

  • 知识回顾
  • 示例代码

我们在上一章回中介绍了" 如何实现文件存储"相关的内容,本章回中将继续介绍与此相关的内容.闲话休提,让我们一起Talk Flutter吧。

知识回顾

我们上一章回中介绍了实现文件存储的三个步骤,不过限于篇幅原因,只介绍了第一个步骤,本章回中将介绍两个步骤,详细如下:

  • 在路径中创建文件;
  • 在文件中读写数据;

示例代码

 /// 创建文件
  Future<File> get _createFile async {
    ///先获取directory,然后再从directory中获取绝对路径
    final localDirectory = await getExternalStorageDirectory();
    return File('${localDirectory?.path}/test_file.txt');
  }

  /// 向文件中写入内容
  Future<File> _writeContentToFile(String data) async {
    final file = await _createFile;
    return file.writeAsString(data);
  }

  /// 从文件中读取内容
  Future<String> _readContentFromFile() async {
    try {
      final file = await _createFile;
      final contents = await file.readAsString();

      return contents;
    } catch (e) {
      // If encountering an error, return exception
      return e.toString();
    }
  }

代码中创建文件使用了File的构造方法,在构造方法中传入文件绝对路径和文件名就可以创建一个文件,创建完文件后就可以向文件中读取或者写入数据。这些操作可以通过File类提供的相关方法来完成。编译上面的程序可以得到以下运行结果,从运行结果中可以看到,文件已经读写成功:

I/flutter (30402): write data:'test data 'to file
I/flutter (30402): get data:'test data'from file

代码中读写的是String类型的数据,因此使用了readAsString()和writeAsString()方法。File类还提供了其它的方法来读写数据,我在这里就不详细介绍了,大家可以自行查询相关文档。注意所有与文件相关的操作都必须是异步操作。

看官们,关于"如何实现文件存储"相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

你可能感兴趣的:(一起Talk,Flutter吧,flutter文件操作,flutter,File,flutter读写文件)