我有一个名为“exampel.txt”的文本文件。它有以下内容。
{"eks": {"hel" : 0,"gain": [0,1,2,3,4,5, "htj"],"a": "bb" }, "slow": {"animals": {"sealion": "muuh", 1 : "blabla",},"eat": {"1": "straw",2: ["food", "insects", "bacon"]}}}
内容从来不是相同的,而是总是在上面提到的结构中。在C#中我怎样才能把它作为字典来读呢?
所以我可以像在python中那样使用它
数据似乎是JSON格式的,你可以反序列化相同的有目录。类似于:
Dictionary<string, object> values =
JsonConvert.DeserializeObject<Dictionary<string, object>>(json);
在这里,您的值类型不是固定的,比如它有时是JSONObject/JSONArray/String等,在这种情况下,您应该使用Dictionary。
在StackOverflow中有很多获取值的例子,例如https://StackOverflow.com/a/24381795/1105291。
但是如果您知道文件中的键及其数据类型,我强烈建议您创建并使用new Class而不是Dictionary中的对象。
Nicolas Tyler在https://stackoverflow.com/A/7321505/1105291上给出了更好的解释。