The best way to parse a JSON in Dart

后端 未结 6 2021
温柔的废话
温柔的废话 2020-12-09 16:43

I\'m trying to load a json file from a URL and parse it within Dart. So I had tried the following code as suggested from some links when I google for it:

            


        
相关标签:
6条回答
  • 2020-12-09 16:46

    in my case

    JSON.decode

    didn't work.

    Instead I had to use :

    import 'dart:convert' as JSON;
    
    final json=JSON.jsonDecode(myJsonAsString);
    
    0 讨论(0)
  • 2020-12-09 16:52

    It depends on a lot of things.

    Is the json text you get is an array or a map?

    You can try with:

    Map model = new parse(response);
    

    Or

    List model = new parse(response);
    

    but you need to import JSONObject by Chris Buckett into your package

    import "package:json_object/json_object.dart";
    

    You can install it from pubspec adding this dependency

    json_object
    
    0 讨论(0)
  • 2020-12-09 17:07

    you can try this package. pub: g_json

    dynamic model = JSON.parse(JsonStringFromAnywhere);
    
    final name = model['name'].stringValue;
    // OR
    final name = model.name;
    
    0 讨论(0)
  • 2020-12-09 17:09

    Simply use json of the dart:convert package. Here is an example :

    import 'dart:convert';
    
    main() {
      final myJsonAsString = '{"a": 1, "b": "c"}';
      final decoded = json.decode(myJsonAsString);
      ....
    }
    

    See Parsing JSON for more details.

    0 讨论(0)
  • 2020-12-09 17:09

    There's a new pub package for this:

    Victor Savkin - Serializers.

    I didn't use it but seems to me that it will suite you. Try it out

    0 讨论(0)
  • 2020-12-09 17:10

    here is my solution :) At first you need to import the convert package :

         import 'dart:convert';
    
         var res = json.decode(response.body);
    

    then you can get values by key, like below:

         print(res["message"]);
    
    0 讨论(0)
提交回复
热议问题