Use System.Globalization to get a country list(.net中获取国家英文全名以及代码)

原地址:http://www.dreamincode.net/code/snippet2879.htm

 

  using System.Collections.Generic;
  using System.Globalization;

  public static List<string> GetCountryList()
     {
        //create a new Generic list to hold the country names returned
        List<string> cultureList = new List<string>();

        //create an array of CultureInfo to hold all the cultures found, these include the users local cluture, and all the
        //cultures installed with the .Net Framework
        CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.AllCultures & ~CultureTypes.NeutralCultures);

        //loop through all the cultures found
        foreach (CultureInfo culture in cultures)
        {
            //pass the current culture's Locale ID (http://msdn.microsoft.com/en-us/library/0h88fahh.aspx)
            //to the RegionInfo contructor to gain access to the information for that culture
            RegionInfo region = new RegionInfo(culture.LCID);

            //make sure out generic list doesnt already
            //contain this country
            if (!(cultureList.Contains(region.EnglishName)))
                //not there so add the EnglishName (http://msdn.microsoft.com/en-us/library/system.globalization.regioninfo.englishname.aspx)
                //value to our generic list
                cultureList.Add(region.EnglishName + "--" + region.Name);
        }
        return cultureList;
    }

 

 

  //调用方法

  List<string> strs = new List<string>();
        strs = GetCountryList();
        for (int i = 0; i < strs.Count; i++)
        {
            Response.Write("国家名称:"+strs[i].ToString()+"<br>");
        }

posted @ 2010-03-09 14:18  自由精灵  阅读(432)  评论(0编辑  收藏  举报