C#获取Google Map对应地名的经纬度值

using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.IO;

namespace YourNameSpace
{
    
/// <summary>
    
/// a class for latitude and longtitude
    
/// </summary>
    [Serializable]
    
public class Geo
    {
        
/// <summary>
        
/// latitude
        
/// </summary>
        private string _latitude = "";

        
/// <summary>
        
/// longtitude
        
/// </summary>
        private string _longtitude = "";

        
/// <summary>
        
/// default constructor
        
/// </summary>
        public Geo()
        {

        }

        
/// <summary>
        
/// construct geo given latitude and longtitude
        
/// </summary>
        
/// <param name="latitude"></param>
        
/// <param name="longtitude"></param>
        public Geo(string latitude, string longtitude)
        {
            _latitude 
= latitude;
            _longtitude 
= longtitude;
        }
        
        
/// <summary>
        
/// construct geo given name of a place
        
/// </summary>
        
/// <param name="location"></param>
        public Geo(string location)
        {
            
string output = "csv";
            
string url = string.Format("http://maps.google.com/maps/geo?q={0}&output={1}", location, output);
            HttpWebRequest request 
= (HttpWebRequest)WebRequest.Create(url);
            HttpWebResponse response 
= (HttpWebResponse)request.GetResponse();
            
using (StreamReader sr = new StreamReader(response.GetResponseStream()))
            {
                
string[] tmpArray = sr.ReadToEnd().Split(',');
                _latitude 
= tmpArray[2];
                _longtitude 
= tmpArray[3];
            }
        }

        
/// <summary>
        
/// get latitude(纬度)
        
/// </summary>
        public string Latitude
        {
            
get { return _latitude; }
            
set { _latitude = value; }
        }

        
/// <summary>
        
/// get longtitude(经度)
        
/// </summary>
        public string Longtitude
        {
            
get { return _longtitude; }
            
set { _longtitude = value; }
        }
    }
}

转自:http://www.cnblogs.com/yazdao/archive/2010/01/22/1654179.html
谢谢分享

posted @ 2011-07-21 10:12  jake2011  阅读(259)  评论(0编辑  收藏  举报