1

我想做一个控制台应用程序,可以查询网站的数据,处理它,然后显示它。即 - 访问http://data.mtgox.com/然后显示货币 X 对货币 Y 的汇率。

我能够通过 WebClient 和 StreamReader 获得一大串文本(尽管我不太了解它们),我想我可以将字符串修剪成我想要的,然后延迟循环查询以启用更新数据,而无需再次运行程序。但是我只是在推测,似乎会有比这更有效的数据访问方式。我错过了什么吗?

编辑 - 普遍的共识似乎是使用 JSON 来做到这一点;这正是我正在寻找的!多谢你们!

4

2 回答 2

1

看起来该站点提供了一个提供 JSON 数据的 API。如果你不知道 JSON 是什么,你需要研究一下,但基本上你可以创建代表这个 JSON 的对象模型。如果您有最新版本的 VS2012,您可以复制 JSON 并右键单击,点击特殊粘贴,然后粘贴为类。这将自动为您生成模型。然后,您联系 API,检索 JSON,将其反序列化到您的模型中,然后从那里做任何您想做的事情。

于 2013-04-09T21:43:12.923 回答
0

更好的方法:

string url = "http://data.mtgox.com/";
HttpWebRequest myWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);
myWebRequest.Method = "GET"; // This can also be "POST"
HttpWebResponse myWebResponse = (HttpWebResponse)myWebRequest.GetResponse();
StreamReader myWebSource = new StreamReader(myWebResponse.GetResponseStream());
string myPageSource = string.Empty;
myPageSource= myWebSource.ReadToEnd();
myWebResponse.Close();

// Do something with the data in myPageSource

获得数据后,查看JSON.NET来解析它

于 2013-04-09T21:43:33.660 回答