flutter 读取json文件、图片文件、其他文件

1,698 阅读1分钟
/// 注意:资源路径需要在pubspec.yaml文件中注入
import 'dart:convert';
import 'package:flutter/services.dart' show rootBundle; 

/// todo: 读取本地json文件
/// [jsonName] json文件名称
/// 示例:getLocalJson("test")
Future<Map<String, dynamic>> getLocalJson(String jsonName) async {
  Map<String, dynamic> map = jsonDecode(await rootBundle.loadString("assets/json/" + jsonName+".json"));
  return map;
}

/// todo: 读取本地图片文件
/// [imgName] 图片名称
/// 示例:getLocalImg("test.png")
String getLocalImg(String imgName) => "assets/image/" + imgName;

/// todo: 读取本地文件
/// [pathFileName] 完整路径
/// 示例:getLocalImg("assets/image/test.png")
Future<Map<String, dynamic>> getLocalFile(String pathFileName) async {
  Map<String, dynamic> map = jsonDecode(await rootBundle.loadString(pathFileName));
  return map;
}