如何将此字符串拆分为Dictionary<;字符串,字符串>;
本文关键字:字符串 gt lt Dictionary 拆分 | 更新日期: 2023-09-27 17:57:57
我有以下字符串:
{"key1":"value1","key2":"value2,some other part of value2"}
我可以使用以下长语法来拆分它:
var s = someString.Split(new[] {"'",'""}, StringSplitOptions.RemoveEmptyEntries);
var firstEntryValue = s[0].Split(':')[1];
var secondEntryValue = s[1].Split(':')[1];
既然这个字符串基本上是一个Dictionary<string,string>
,我怎么能在一行中把整个东西拉到那个类型中呢?
我见过这样的东西:
var s = someString.Split(new[] {"'",'""}, StringSplitOptions.RemoveEmptyEntries)
.Select(p => p.Split(':'))
.ToDictionary(split => split[0], split => split[1]);
但它抛出和索引界外错误。是否有类似的语法可以使用?
由于字符串遵循JSON格式,拆分它不是一个好的选择——正是因为您提到的问题。
您可以使用JsonConvert
代替:
var res = JsonConvert.DeserializeObject<Dictionary<string,string>>(inputString);