json - 我如何在 Dart 中对集合进行 JSON.stringify

标签 json dart

如何从 dart 中的集合中创建 JSON 字符串,就像我可以使用 Maps 那样。文档说我可以将 map 或数组传递到 JSON.stringify()方法。但是 Dart 中没有 Array 数据类型,传递集合给了我一个异常(exception)。

我有一个天真的解决方法,但我想知道是否会有更好的方法来做到这一点:

    String s = '[';
    bool first=true;

    _set.forEach(function(item){
      if (first) {
        first = false;
      } else {
        s+=',';
      }
      s += JSON.stringify(item);
    });
    s +=']';
    print(s);
    return s;

最佳答案

传递列表对我有用:

  • 在 Dart VM 中导入 dart-sdk/lib/frog/server/dart_json.dart
  • 在 Dartium 进口 json:dart

  • 使用此代码:
    void main() {
      var list = new List.from(["a","b","c"]);
      print(JSON.stringify(list));
    }
    

    打印此 JSON 片段:
    ["a","b","c"]
    

    不适用于新 Set.from(...)这是预期的,因为 JSON 只处理 map 和列表。

    关于json - 我如何在 Dart 中对集合进行 JSON.stringify,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9189526/

    相关文章:

    json - 通过 bash 脚本更改 json 文件

    javascript - 如何使用 Jquery 和 JSON 填充 Bootstrap 网格?

    python - 如何使用 Python 解码 JSON

    flutter - 为什么 AnimatedSwitcher() 嵌套在 AnimatedBuilder() 中时不起作用?

    http - 加载时间长,并且显示_InternalLinkedHashMap和列表<Dynamic>错误

    dart - flutter 步进器小部件 - 在各个步骤中验证字段

    java - 立即将 Spark 中的 Json 字符串索引到 Elasticsearch

    android - 如何从 Web 服务动态更新 Android 中的 Assets 文件夹?

    forms - Flutter:向 Column 添加了一个额外的 TextFormField 但显示没有变化

    dart - Sqljocky抛出SocketException