flutter 中文件工具类
Posted loaderman
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flutter 中文件工具类相关的知识,希望对你有一定的参考价值。
添加依赖:
path_provider: ^0.5.0+1
import ‘dart:convert‘; import ‘dart:io‘; import ‘package:path_provider/path_provider.dart‘; class FileUtils /// 临时目录: /data/user/0/com.example.myapp/cache /// 一个临时目录(缓存),系统可以随时清除。 static Future<String> getTempDir() async try Directory tempDir = await getTemporaryDirectory(); return tempDir.path; catch (err) print(err); return null; /// 文档目录: /data/user/0/com.example.myapp/app_flutter /// 应用程序的目录,用于存储只有它可以访问的文件。只有当应用程序被删除时,系统才会清除目录。 static Future<String> getAppDocDir() async try Directory appDocDir = await getApplicationDocumentsDirectory(); return appDocDir.path; catch (err) print(err); return null; static readFile(filePath) return new File(‘$filePath‘); /// 读取json文件 static Future<String> readJsonFile(filePath) async try final file = readFile(filePath); return await file.readAsString(); catch (err) print(err); return null; /// 写入json文件 static Future<File> writeJsonFile(obj, filePath) async try final file = readFile(filePath); return await file.writeAsString(json.encode(obj)); catch (err) print(err); return null;
使用:
FileUtils.getAppDocDir().then((String appDocDir) String filePath = appDocDir + ‘/test.json‘; FileUtils.readJsonFile(filePath).then((String sms) if (_sms == null || sms.isEmpty) return; setState(() Map marketingSmsMap = json.decode(sms); DataBean _bean = new DataBean.fromJson(marketingSmsMap); ); ); );
以上是关于flutter 中文件工具类的主要内容,如果未能解决你的问题,请参考以下文章