C# 在C中使用fastJson解析JSON#
我无法在现有线程中找到问题的答案。我有一个JSON字符串:C# 在C中使用fastJson解析JSON#,c#,json,C#,Json,我无法在现有线程中找到问题的答案。我有一个JSON字符串: { "Count": 4, "Result:000": { "Score": 4.571, "W0DateTime": "2014-08-28 23:00:00", "W0Value": 1.0164, "W0Fibonacci": 0, "Direction": "SHORT", "StartDate": "2014-08-
{
"Count": 4,
"Result:000": {
"Score": 4.571,
"W0DateTime": "2014-08-28 23:00:00",
"W0Value": 1.0164,
"W0Fibonacci": 0,
"Direction": "SHORT",
"StartDate": "2014-08-29 16:30:00",
"EndDate": "2014-08-28 01:00:00",
"BarsCalculated": 80
}
}
如何获取结果:000
的内容
我有以下代码:
...
public Dictionary<string, object> dictionaryObject;
public void jsonInitStructure(string sJsonString)
{
dictionaryObject = (Dictionary<string , object>) fastJSON.JSON.Parse(sJsonString);
}
...
。。。
公共词典对象;
public void jsonInitStructure(字符串sJsonString)
{
dictionaryObject=(Dictionary)fastJSON.JSON.Parse(sJsonString);
}
...
Count
很容易:Convert.ToInt32(dictionaryObject[“Count”])
但是如何从Result:000
中获取值呢?例如(分数、开始日期、结束日期等)
你试过铸造它吗
var result000 = (Dictionary<string, object>)dictionaryObject["Result:000"];
var result000Score = Convert.ToDouble(result000["Score"]);
var result000=(Dictionary)dictionaryObject[“Result:000”];
var result000Score=Convert.ToDouble(result000[“Score”]);
请试一试
Array objList = (Array)dictionaryObject["Result:000"] ;
foreach (object obj in objList)
{
Dictionary<string, object> dictionary = new Dictionary<string, object>();
dictionary = (Dictionary<string, object>)obj;
var var1 = dictionary["Score"].ToString();
var var2 = dictionary["W0DateTime"].ToString();
}
Array objList=(Array)dictionaryObject[“Result:000”];
foreach(对象列表中的对象obj)
{
字典=新字典();
dictionary=(dictionary)obj;
var var1=字典[“分数”].ToString();
var var2=字典[“W0DateTime”].ToString();
}
谢谢您的帮助。这是行不通的。引发此错误:无法将类型为“System.Collections.Generic.Dictionary`2[System.String,System.Object]”的对象转换为类型“System.Array”。但是罗林的解决方案非常有效!又是Thnx!完美的罗琳!这正是我想要的方式!非常感谢你的帮助。当我读到它的时候,它看起来是如此的难以置信的简单,但是我无法自己发现这个演员!