获得价值我有这个JToken无法从JTOken
var pv = JToken.Parse(keys["parameterValues"].ToString()).ToList()[0];
这将返回该值
{"DE:Actual Savings": 42217.0}
我不能使用.value的,因为浮子表示为对象{42217.0}
我怎样才能得到这个数字?现在我使用的ToString()并将其转换
获得价值我有这个JToken无法从JTOken
var pv = JToken.Parse(keys["parameterValues"].ToString()).ToList()[0];
这将返回该值
{"DE:Actual Savings": 42217.0}
我不能使用.value的,因为浮子表示为对象{42217.0}
我怎样才能得到这个数字?现在我使用的ToString()并将其转换
要将值转换为定义的类型,你可以使用下面定义的方法之一:
System.Convert.ChangeType(jtoken.ToString(), targetType);
或
JsonConvert.DeserializeObject(jtoken.ToString(), targetType);
让我们考虑到我们的样本:
string json = @{"DE:Actual Savings": 42217.0}
你可以这样做:
var obj = (JObject)JsonConvert.DeserializeObject(json);
Type type = typeof(float);
var i1 = System.Convert.ChangeType(obj["DE:Actual Savings"].ToString(), type);
希望这可以解决您的问题。
我从来没有在.net中处理过JSON,但是我得到的值是可怕的格式。感谢这个答案它的作品!这正是我没有使用'ChangeType()'在tostring上使用TryParse有什么不同? –
@AKADER欢迎您。 :) – eg16
'float val = float.Parse(YourObj.Value)'; – Mairaj
我无法使用.Value我尝试过。值()但这不起作用。 –