读取文件并转换为具有正确类型的字典

时间:2017-09-04 12:02:13

标签: c#

我有一个名为" 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中那样使用它

1 个答案:

答案 0 :(得分:1)

数据似乎是JSON格式,您可以反序列化以获得目录。 类似的东西:

 Dictionary<string, object> values = 
JsonConvert.DeserializeObject<Dictionary<string, object>>(json);

这里,你的值类型不是固定的,就像它有时是JSONObject / JSONArray / String等,在这种情况下你应该使用Dictionary。

StackOverflow中有很多例子可以获取价值,例如: https://stackoverflow.com/a/24381795/1105291

但是你知道文件中的键及其数据类型,我强烈建议创建并使用新的Class而不是Dictionary中的对象。

Nicolas Tyler在https://stackoverflow.com/a/7321505/1105291给出了更好的解释。