Share via


CultureInfo.CreateSpecificCulture 方法

创建表示与指定名称关联的特定区域性的 CultureInfo

**命名空间:**System.Globalization
**程序集:**mscorlib(在 mscorlib.dll 中)

语法

声明
Public Shared Function CreateSpecificCulture ( _
    name As String _
) As CultureInfo
用法
Dim name As String
Dim returnValue As CultureInfo

returnValue = CultureInfo.CreateSpecificCulture(name)
public static CultureInfo CreateSpecificCulture (
    string name
)
public:
static CultureInfo^ CreateSpecificCulture (
    String^ name
)
public static CultureInfo CreateSpecificCulture (
    String name
)
public static function CreateSpecificCulture (
    name : String
) : CultureInfo

参数

  • name
    预定义的 CultureInfo 名称或现有 CultureInfo 的名称。

返回值

CultureInfo,表示: 固定的区域性,如果 name 是空字符串 ("")。 - 或 - 与 name 关联的特定区域性,如果 name 是非特定区域性。 - 或 - 由 name 指定的区域性,如果 name 已经是特定区域性。

异常

异常类型 条件

ArgumentNullException

name 为 空引用(在 Visual Basic 中为 Nothing)。

ArgumentException

name 不是有效的区域性名称。

- 或 -

name 指定的区域性没有特定的区域性与之关联。例如:“zh-CHS”或“zh-CHT”。

备注

这些区域性通常分为三个集合:固定区域性、非特定区域性和特定区域性。

固定区域性不区分区域性。可以使用空字符串 ("") 按名称或者按区域性标识符 0x007F 来指定固定区域性。InvariantCulture 检索固定区域性的实例。它与英语语言关联,但不与任何国家/地区关联。它几乎可用在要求区域性的“全局化”命名空间中的所有方法中。

非特定区域性是与某种语言关联但不与国家/地区关联的区域性。特定区域性是与某种语言和某个国家/地区关联的区域性。例如,“fr”是非特定区域性,而“fr-FR”是特定区域性。注意,“zh-CHS”(简体中文)和“zh-CHT”(繁体中文)均为非特定区域性。

区域性有层次结构,即特定区域性的父级是非特定区域性,而非特定区域性的父级是 InvariantCultureParent 属性将返回与特定区域性关联的非特定区域性。

如果特定区域性的资源在系统中不可用,则使用非特定区域性的资源;如果非特定区域性的资源也不可用,那么使用主程序集中嵌入的资源。有关资源备用进程的更多信息,请参见“打包和部署资源”。

Windows API 中的区域性列表与 .NET Framework 中的区域性列表略有不同。例如,在 Windows API 中未提供带有区域性标识符 0x7C04 的非特定区域性 zh-CHT“中文(繁体)”。如果需要具备同 Windows 进行互操作的能力(例如,通过 p/invoke 机制),可使用在操作系统中定义的特定区域性。这样可以确保与等效的 Windows 区域设置保持一致,它们使用同一 LCID 进行标识。

主题 位置
如何:为 ASP.NET 网页全球化设置区域性和 UI 区域性 在 Visual Studio 中生成 ASP .NET Web 应用程序
如何:为 ASP.NET 网页全球化设置区域性和 UI 区域性 在 Visual Studio 中生成 ASP .NET Web 应用程序
如何:为 ASP.NET 网页全球化设置区域性和 UI 区域性 生成 ASP .NET Web 应用程序

示例

下面的代码示例以不同的区域性类型显示了 CreateSpecificCulture 的结果。

Imports System
Imports System.Globalization

Public Class SamplesCultureInfo

   Public Shared Sub Main()

      ' Prints the header.
      Console.WriteLine("CULTURE                                              SPECIFIC CULTURE")

      ' Determines the specific culture associated with each culture in the .NET Framework.
      Dim ci As CultureInfo
      For Each ci In  CultureInfo.GetCultures(CultureTypes.AllCultures)
         Console.Write("{0,-12} {1,-40}", ci.Name, ci.EnglishName)
         Try
            Console.WriteLine("{0}", CultureInfo.CreateSpecificCulture(ci.Name).Name)
         Catch e As ArgumentException
            Console.WriteLine("(no associated specific culture)")
         End Try
      Next ci

   End Sub 'Main

End Class 'SamplesCultureInfo 


'This code produces the following output.  This output has been cropped for brevity.
'
'CULTURE                                              SPECIFIC CULTURE
'ar           Arabic                                  ar-SA
'ar-SA        Arabic (Saudi Arabia)                   ar-SA
'ar-IQ        Arabic (Iraq)                           ar-IQ
'ar-EG        Arabic (Egypt)                          ar-EG
'ar-LY        Arabic (Libya)                          ar-LY
'ar-DZ        Arabic (Algeria)                        ar-DZ
'ar-MA        Arabic (Morocco)                        ar-MA
'ar-TN        Arabic (Tunisia)                        ar-TN
'ar-OM        Arabic (Oman)                           ar-OM
'ar-YE        Arabic (Yemen)                          ar-YE
'ar-SY        Arabic (Syria)                          ar-SY
'ar-JO        Arabic (Jordan)                         ar-JO
'ar-LB        Arabic (Lebanon)                        ar-LB
'ar-KW        Arabic (Kuwait)                         ar-KW
'ar-AE        Arabic (U.A.E.)                         ar-AE
'ar-BH        Arabic (Bahrain)                        ar-BH
'ar-QA        Arabic (Qatar)                          ar-QA
'bg           Bulgarian                               bg-BG
'bg-BG        Bulgarian (Bulgaria)                    bg-BG
'ca           Catalan                                 ca-ES
'ca-ES        Catalan (Catalan)                       ca-ES
'zh-CHS       Chinese (Simplified)                    (no associated specific culture)
'zh-TW        Chinese (Taiwan)                        zh-TW
'zh-CN        Chinese (People's Republic of China)    zh-CN
'zh-HK        Chinese (Hong Kong S.A.R.)              zh-HK
'zh-SG        Chinese (Singapore)                     zh-SG
'zh-MO        Chinese (Macao S.A.R.)                  zh-MO
'zh-CHT       Chinese (Traditional)                   (no associated specific culture)
'cs           Czech                                   cs-CZ
'cs-CZ        Czech (Czech Republic)                  cs-CZ
'da           Danish                                  da-DK
'da-DK        Danish (Denmark)                        da-DK
using System;
using System.Globalization;

public class SamplesCultureInfo  {

   public static void Main()  {

      // Prints the header.
      Console.WriteLine( "CULTURE                                              SPECIFIC CULTURE" );

      // Determines the specific culture associated with each culture in the .NET Framework.
      foreach ( CultureInfo ci in CultureInfo.GetCultures( CultureTypes.AllCultures ) )  {
         Console.Write( "{0,-12} {1,-40}", ci.Name, ci.EnglishName );
         try  {
            Console.WriteLine( "{0}", CultureInfo.CreateSpecificCulture( ci.Name ).Name );
         }
         catch  {
            Console.WriteLine( "(no associated specific culture)" );
         }
      }

   }

}


/*
This code produces the following output.  This output has been cropped for brevity.

CULTURE                                              SPECIFIC CULTURE
ar           Arabic                                  ar-SA
ar-SA        Arabic (Saudi Arabia)                   ar-SA
ar-IQ        Arabic (Iraq)                           ar-IQ
ar-EG        Arabic (Egypt)                          ar-EG
ar-LY        Arabic (Libya)                          ar-LY
ar-DZ        Arabic (Algeria)                        ar-DZ
ar-MA        Arabic (Morocco)                        ar-MA
ar-TN        Arabic (Tunisia)                        ar-TN
ar-OM        Arabic (Oman)                           ar-OM
ar-YE        Arabic (Yemen)                          ar-YE
ar-SY        Arabic (Syria)                          ar-SY
ar-JO        Arabic (Jordan)                         ar-JO
ar-LB        Arabic (Lebanon)                        ar-LB
ar-KW        Arabic (Kuwait)                         ar-KW
ar-AE        Arabic (U.A.E.)                         ar-AE
ar-BH        Arabic (Bahrain)                        ar-BH
ar-QA        Arabic (Qatar)                          ar-QA
bg           Bulgarian                               bg-BG
bg-BG        Bulgarian (Bulgaria)                    bg-BG
ca           Catalan                                 ca-ES
ca-ES        Catalan (Catalan)                       ca-ES
zh-CHS       Chinese (Simplified)                    (no associated specific culture)
zh-TW        Chinese (Taiwan)                        zh-TW
zh-CN        Chinese (People's Republic of China)    zh-CN
zh-HK        Chinese (Hong Kong S.A.R.)              zh-HK
zh-SG        Chinese (Singapore)                     zh-SG
zh-MO        Chinese (Macao S.A.R.)                  zh-MO
zh-CHT       Chinese (Traditional)                   (no associated specific culture)
cs           Czech                                   cs-CZ
cs-CZ        Czech (Czech Republic)                  cs-CZ
da           Danish                                  da-DK
da-DK        Danish (Denmark)                        da-DK

*/
using namespace System;
using namespace System::Globalization;
int main()
{
   
   // Prints the header.
   Console::WriteLine( "CULTURE                                              SPECIFIC CULTURE" );
   
   // Determines the specific culture associated with each culture in the .NET Framework.
   System::Collections::IEnumerator^ myEnum = CultureInfo::GetCultures( CultureTypes::AllCultures )->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      CultureInfo^ ci = dynamic_cast<CultureInfo^>(myEnum->Current);
      Console::Write( "{0, -12} {1, -40}", ci->Name, ci->EnglishName );
      try
      {
         Console::WriteLine( "{0}", CultureInfo::CreateSpecificCulture( ci->Name )->Name );
      }
      catch ( Exception^ ) 
      {
         Console::WriteLine( "(no associated specific culture)" );
      }

   }
}

/*
This code produces the following output.  This output has been cropped for brevity.

CULTURE                                              SPECIFIC CULTURE
ar           Arabic                                  ar-SA
ar-SA        Arabic (Saudi Arabia)                   ar-SA
ar-IQ        Arabic (Iraq)                           ar-IQ
ar-EG        Arabic (Egypt)                          ar-EG
ar-LY        Arabic (Libya)                          ar-LY
ar-DZ        Arabic (Algeria)                        ar-DZ
ar-MA        Arabic (Morocco)                        ar-MA
ar-TN        Arabic (Tunisia)                        ar-TN
ar-OM        Arabic (Oman)                           ar-OM
ar-YE        Arabic (Yemen)                          ar-YE
ar-SY        Arabic (Syria)                          ar-SY
ar-JO        Arabic (Jordan)                         ar-JO
ar-LB        Arabic (Lebanon)                        ar-LB
ar-KW        Arabic (Kuwait)                         ar-KW
ar-AE        Arabic (U.A.E.)                         ar-AE
ar-BH        Arabic (Bahrain)                        ar-BH
ar-QA        Arabic (Qatar)                          ar-QA
bg           Bulgarian                               bg-BG
bg-BG        Bulgarian (Bulgaria)                    bg-BG
ca           Catalan                                 ca-ES
ca-ES        Catalan (Catalan)                       ca-ES
zh-CHS       Chinese (Simplified)                    (no associated specific culture)
zh-TW        Chinese (Taiwan)                        zh-TW
zh-CN        Chinese (People's Republic of China)    zh-CN
zh-HK        Chinese (Hong Kong S.A.R.)              zh-HK
zh-SG        Chinese (Singapore)                     zh-SG
zh-MO        Chinese (Macao S.A.R.)                  zh-MO
zh-CHT       Chinese (Traditional)                   (no associated specific culture)
cs           Czech                                   cs-CZ
cs-CZ        Czech (Czech Republic)                  cs-CZ
da           Danish                                  da-DK
da-DK        Danish (Denmark)                        da-DK

*/
import System.* ;
import System.Globalization.* ;

public class SamplesCultureInfo
{
    public static void main(String[] args)
    {
        // Prints the header.
        Console.WriteLine("CULTURE                                            "
            + " SPECIFIC CULTURE");
        
        // Determines the specific culture associated with each culture in the 
        // .NET Framework.
        for (int iCtr = 0; 
            iCtr < (CultureInfo.GetCultures(CultureTypes.AllCultures).length); 
            iCtr++) {
            CultureInfo ci = 
                CultureInfo.GetCultures(CultureTypes.AllCultures)[iCtr];
            Console.Write("{0,-12} {1,-40}", ci.get_Name(), 
                ci.get_EnglishName());
            try {
                Console.WriteLine("{0}", CultureInfo.CreateSpecificCulture(
                    ci.get_Name()).get_Name());
            }
            catch(System.Exception exp){
                Console.WriteLine("(no associated specific culture)");
            }
        }
    } //main
} //SamplesCultureInfo

/*
This code produces the following output.  This output has been cropped for 
brevity.

CULTURE                                              SPECIFIC CULTURE
ar           Arabic                                  ar-SA
ar-SA        Arabic (Saudi Arabia)                   ar-SA
ar-IQ        Arabic (Iraq)                           ar-IQ
ar-EG        Arabic (Egypt)                          ar-EG
ar-LY        Arabic (Libya)                          ar-LY
ar-DZ        Arabic (Algeria)                        ar-DZ
ar-MA        Arabic (Morocco)                        ar-MA
ar-TN        Arabic (Tunisia)                        ar-TN
ar-OM        Arabic (Oman)                           ar-OM
ar-YE        Arabic (Yemen)                          ar-YE
ar-SY        Arabic (Syria)                          ar-SY
ar-JO        Arabic (Jordan)                         ar-JO
ar-LB        Arabic (Lebanon)                        ar-LB
ar-KW        Arabic (Kuwait)                         ar-KW
ar-AE        Arabic (U.A.E.)                         ar-AE
ar-BH        Arabic (Bahrain)                        ar-BH
ar-QA        Arabic (Qatar)                          ar-QA
bg           Bulgarian                               bg-BG
bg-BG        Bulgarian (Bulgaria)                    bg-BG
ca           Catalan                                 ca-ES
ca-ES        Catalan (Catalan)                       ca-ES
zh-CHS       Chinese (Simplified)                    (no associated specific 
culture)
zh-TW        Chinese (Taiwan)                        zh-TW
zh-CN        Chinese (People's Republic of China)    zh-CN
zh-HK        Chinese (Hong Kong S.A.R.)              zh-HK
zh-SG        Chinese (Singapore)                     zh-SG
zh-MO        Chinese (Macau S.A.R.)                  zh-MO
zh-CHT       Chinese (Traditional)                   (no associated specific 
culture)
cs           Czech                                   cs-CZ
cs-CZ        Czech (Czech Republic)                  cs-CZ
da           Danish                                  da-DK
da-DK        Danish (Denmark)                        da-DK
*/

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

CultureInfo 类
CultureInfo 成员
System.Globalization 命名空间
CultureInfo
Parent