我正在通过以下代码从JSON文件中获取数据:
var content = await rootBundle.loadString("json/story1.json");
decodedContent = json.decode(content);
我希望能够在story1.json
文件中存储一个整数。
答案 0 :(得分:0)
您无法将数据存储在assets/json/story1.json
中,因为该文件是已编译应用程序的一部分,因此无法更改。
您需要定期read and write files以使其正常工作。
要访问设备的存储,您必须先add path_provider
to your pubspec.yaml
file first。
现在,您只需将json数据写入这样的文件中即可:
Future<File> get file async => File('${(await getApplicationDocumentsDirectory()).path}/json/story1.json');
// You can write data like this:
await (await file).writeAsString(jsonEncode(decodedContent));
下次您可能要读取更改的数据。您可以这样做:
decodedContent = jsonDecode(await (await file).readAsString());