以下网址代表一长串数据:http://api.bitcoincharts.com/v1/markets.json
我注意到在url的末尾它是.json扩展名,所以我已经研究过了。
我已下载JSON.NET并在我的c#.net源代码中引用它。
在这个长字符串中,我需要从“符号”中获取以下数据:“mtgoxUSD”并将其放在我的表单上;
1)“出价” 2)“高” 3)“问” 4)“平均” 5)“低”
我真的很困惑如何正确提取这些数据,因为URL是一个巨大的字符串。
以下代码段是我编码的内容,因为我对如何继续进行了难以理解。
public void Grab()
{
using (var tradeClient = new System.Net.WebClient())
{
var json = tradeClient.DownloadString("http://api.bitcoincharts.com/v1/markets.json");
}
}
请指导我或引用我如何开始,因为我以前从未处理过json扩展或文件!
谢谢!
答案 0 :(得分:0)
您可以使用Newtonsoft.Json.Linq库
来使用JArray array = (JArray) JsonConvert.DeserializeObject(json);
答案 1 :(得分:0)
试试这个:
using (WebClient wc = new WebClient())
{
var json = wc.DownloadString("http://coderwall.com/mdeiters.json");
var arrJson = JsonConvert.DeserializeObject<string[][]>(json);
}
或者您可以创建一个Object / Class并将此json转换为该Object。请参阅此link以供参考。请参阅下面的示例代码和类:
using (WebClient wc = new WebClient())
{
var json = wc.DownloadString("http://coderwall.com/mdeiters.json");
var jsonMarket = JsonConvert.DeserializeObject<Market>(json);
}
public class Market
{
[JsonProperty("high")]
public string High{ get; set; }
[JsonProperty("latest_trade")]
public string LatestTrade { get; set; }
[JsonProperty("bid")]
public string Bid{ get; set; }
[JsonProperty("volume")]
public string Volume{ get; set; }
[JsonProperty("currency")]
public string Currency{ get; set; }
[JsonProperty("currency_volume")]
public string CurrencyVolume{ get; set; }
[JsonProperty("ask")]
public string Ask { get; set; }
[JsonProperty("close")]
public string Close { get; set; }
[JsonProperty("avg")]
public string AVG { get; set; }
[JsonProperty("symbol")]
public string Symbol { get; set; }
[JsonProperty("low")]
public string Low { get; set; }
}