我的字符串
{id: produk12549, nama: Abcd, url: myUrl}
如何更改为:
{"id": "produk12549", "nama": "Abcd", "url": "myUrl"}
我的字符串
{id: produk12549, nama: Abcd, url: myUrl}
{"id": "produk12549", "nama": "Abcd", "url": "myUrl"}
import 'dart:convert';
void main() {
Map<String, dynamic> result = jsonDecode("""{"id": "produk12549", "nama": "Abcd", "url": "myUrl"}""");
print(result);
}
import 'dart:convert';
void main() {
var s = "{id: produk12549, nama: Abcd, url: myUrl}";
var kv = s.substring(0,s.length-1).substring(1).split(",");
final Map<String, String> pairs = {};
for (int i=0; i < kv.length;i++){
var thisKV = kv[i].split(":");
pairs[thisKV[0]] =thisKV[1].trim();
}
var encoded = json.encode(pairs);
print(encoded);
}
void main(List<String> args) {
const str = '{id: produk12549, nama: Abcd, url: myUrl}';
var entries = str
.substring(1,str.length-1)
.split(RegExp(r',\s?'))
.map((e) => e.split(RegExp(r':\s?')))
.map((e) => MapEntry(e.first, e.last));
var result = Map.fromEntries(entries);
print(result);
}
输出:
{id: produk12549, nama: Abcd, url: myUrl}
"
,那么请使用以下代码:.map((e) => MapEntry('"'+e.first+'"', '"'+e.last+'"'))
。 - Ουιλιαμ Αρκευα{urls:[one,two]}
这样,或者值包含由空格分隔的两个单词,例如 {name: "This is my name"}
,该怎么办?谢谢。 - Nux