flutter 文件操作与网络请求
文件操作
- APP 目录
- 临时目录
- getTemporaryDirectory()获取;系统可随时清除临时目录的文件;
- 文档目录
- getApplicationDocumentsDirectory()获取;只有当应用程序被卸载时,系统才会清除该目录
- 外部存储目录
- getExternalStorageDirectory()获取;
- 第三方库 path_provider,样例
import 'dart:io';
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:path_provider/path_provider.dart';
class FileOperationRoute extends StatefulWidget {
FileOperationRoute({
Key? key}) : super(key: key);
@override
_FileOperationRouteState createState() => _FileOperationRouteState();
}
class _FileOperationRouteState extends State<FileOperationRoute> {
int _counter = 0;
@override
void initState() {
super.initState();
_readCounter().then((int value) {
setState(() {
_counter = value;
});
});
}
Future<File> _getLocalFile() async {
String dir = (await getApplicationDocumentsDirectory()).path;
return File('$dir/counter.txt');
}
Future<int> _readCounter() async {
try {
File file = await _getLocalFile();
String contents = await file.readAsString</