【问题标题】:how to use json to decode如何使用json解码
【发布时间】:2019-12-30 09:18:14
【问题描述】:

我首先在我的应用程序中使用 Json 是工作,现在 json.decode() 不工作。 我的功能:

load() async {
    final prefs = await SharedPreferences.getInstance();
    items k;
    my_fav.clear();
    String key = 'ss';
    myStringList = prefs.getStringList('favorite');
    print(myStringList.length);
    for (int i = 0; i < myStringList.length; i++) {
      prefs.setString(key, myStringList[i]);
      print(prefs.getString(key));

      k = items.fromJson(await json.decode(prefs.getString(key)));

      if (!Id.contains(k.title)) {
        my_fav.add(k);
        Id.add(k.title);
      }
    }}

这是我收到的例外情况 ::::

E/flutter ( 6480): [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: FormatException: Unexpected end of input (at character 1)
E/flutter ( 6480): 
E/flutter ( 6480): ^
E/flutter ( 6480): 
E/flutter ( 6480): #0      _ChunkedJsonParser.fail (dart:convert-patch/convert_patch.dart:1392:5)
E/flutter ( 6480): #1      _ChunkedJsonParser.close (dart:convert-patch/convert_patch.dart:510:7)
E/flutter ( 6480): #2      _parseJson (dart:convert-patch/convert_patch.dart:30:10)
E/flutter ( 6480): #3      JsonDecoder.convert (dart:convert/json.dart:493:36)
E/flutter ( 6480): #4      JsonCodec.decode (dart:convert/json.dart:151:41)
E/flutter ( 6480): #5      _Beloved.load (package:kurdish_app/pages/beloved.dart:83:37)
E/flutter ( 6480): #6      _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:71:64)

【问题讨论】:

  • 你能添加一个你试图解码的字符串吗?

标签: android json flutter


【解决方案1】:

看起来它无法正确解码您的字符串。您应该尝试使用jsonEncode 对字符串进行编码,以确保您的JSON 格式正确,然后使用jsonDecode。 您还应该使用 JSON 格式化程序测试您正在使用的字符串。 (我经常用this one

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-10
    • 2011-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多