文章目录
- 1. 知识回顾
- 2. 示例代码
我们在上一章回中介绍了"如何实现文件存储"相关的内容,本章回中将继续介绍与此相关的内容.闲话休提,让我们一起Talk Flutter吧。
1. 知识回顾
我们上一章回中介绍了实现文件存储的三个步骤,不过限于篇幅原因,只介绍了第一个步骤,本章回中将介绍两个步骤,详细如下:
- 在路径中创建文件;
- 在文件中读写数据;
2. 示例代码
/// 创建文件
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类还提供了其它的方法来读写数据,我在这里就不详细介绍了,大家可以自行查询相关文档。注意所有与文件相关的操作都必须是异步操作。
看官们,关于"如何实现文件存储"相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!