如何将Map <String,String>转换为人类可读的字符串(在Dart中)?

Rog*_*ger 3 dart

我正在尝试将Map转换为人类可读的字符串.

所以,假设我有这张地图:

Map<String, String> map = { "foo": "lorem", "bar": "ipsum" };
Run Code Online (Sandbox Code Playgroud)

我想将它转换为以下字符串,包括缩进:

{
    "foo": "lorem",
    "bar": "ipsum"
}
Run Code Online (Sandbox Code Playgroud)

Rog*_*ger 8

使用: new JsonEncoder.withIndent(" ").convert(map)

看看dartpad:https://dartpad.dartlang.org/685e0fc43fb4e70c602e

  • 这假设输入映射是有效的 JSON 输入,即:值是简单值。如果键或值是您自己的类,那么如果不使用额外的 `toEncodable` 参数,这种转换将无法工作。 (2认同)