C# 如何从google地图读取返回的xml值

C# 如何从google地图读取返回的xml值,c#,winforms,google-maps,google-maps-api-3,httpwebrequest,C#,Winforms,Google Maps,Google Maps Api 3,Httpwebrequest,我试着调用谷歌地图地理代码,并在他们的网页上遵循这个例子,尝试将其应用到我的网站上 在本例中,地理编码API为 上述查询与“1600山地圆形剧场公园道”相同 视图,CA”: 此请求返回的XML如下所示 现在我正试图在我的c#winforms应用程序中运行这样的url string url = "http://maps.googleapis.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,

我试着调用谷歌地图地理代码,并在他们的网页上遵循这个例子,尝试将其应用到我的网站上

在本例中,地理编码API为 上述查询与“1600山地圆形剧场公园道”相同 视图,CA”: 此请求返回的XML如下所示

现在我正试图在我的c#winforms应用程序中运行这样的url

    string url = "http://maps.googleapis.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=true_or_false";
    WebRequest req = HttpWebRequest.Create(url);
    WebResponse res = req.GetResponse();
    StreamReader sr = new StreamReader(res.GetResponseStream());
    try
    {
        Match coord = Regex.Match(sr.ReadToEnd(), "<coordinates>.*</coordinates>");
        var b = coord.Value.Substring(13, coord.Length - 27);
    }
    finally
    {
        sr.Close();
    }
stringurl=”http://maps.googleapis.com/maps/api/geocode/xml?address=1600+圆形剧场+公园道,+山景,+CA和传感器=真或假”;
WebRequest req=HttpWebRequest.Create(url);
WebResponse res=req.GetResponse();
StreamReader sr=新的StreamReader(res.GetResponseStream());
尝试
{
Match-coord=Regex.Match(sr.ReadToEnd(),“*”);
VarB=坐标值子串(13,坐标长度-27);
}
最后
{
高级关闭();
}
然而,它似乎没有返回任何东西,因此我的VarB行给出了一个索引越界错误。是否有人能为我指出正确的方向,至少让这个例子发挥作用,这样我就可以将逻辑应用到我自己的应用程序中

谢谢

如果您直接在浏览器中访问您的链接“”,您可以看到它返回的内容。它给了我一个请求被拒绝的错误

该问题是由传感器=真或假参数引起的。你必须选择是真是假。谷歌在他们的例子中就是这么说的,所以你必须明确地自己做出决定。此设置指示应用程序是否使用位置传感器。在你的情况下,我猜不是,所以设置为false


如果您更改正在使用的链接,我想您会得到预期的结果。

我想我在第一次尝试API时也错过了传感器参数。常识-我显然缺乏。抱歉-作为一个初学者,你会陷入代码的泥潭,你会忘记退后一步,看看眼前是什么-谢谢