C#|从URL中抓取JSON无法将字符串转换为int

时间:2017-02-28 15:08:57

标签: c# json

我有一段代码,应该从URL获取信息。获取名为lowest_price的值,然后将其解析为变量,但JSON中有一个$符号,因此我必须将其删除,之后我无法正确解析JSON。

我的代码:

var tokenPrice = JObject.Parse(steamMarket).ToString().Replace("$", " ");
double marketPrice = tokenPrice["lowest_price"];

JSON

{"success":true,"lowest_price":"$5.61","volume":"6","median_price":"$5.61"}

错误:

  

参数1:无法转换为' string'到' int'

3 个答案:

答案 0 :(得分:3)

double marketPrice = double.Parse(JObject.Parse(steamMarket)["lowest_price"].ToString().Replace("$", ""));

答案 1 :(得分:0)

tokenPrice [" lowest_price"]是一个字符串,c#不会自动为您转换类型。

var tokenPrice = JObject.Parse(steamMarket);
double marketPrice = double.Parse(tokenPrice["lowest_price"].ToString().Replace("$", ""));

答案 2 :(得分:0)

你也可以这样做:

string json = "{\"success\":true,\"lowest_price\":\"$5.61\",\"volume\":\"6\",\"median_price\":\"$5.61\"}";
var jObject = Newtonsoft.Json.Linq.JObject.Parse(json);
double tokenPrice = double.Parse((string )jObject["lowest_price"], NumberStyles.Currency, new CultureInfo("en-US"));