与 RegionInfo 对象关联的名称
更新:2007 年 11 月
尽管有多个名称可用于构造 RegionInfo 对象,但是该对象一旦创建,就只有一个名称与其相关联。这一命名机制与 CultureInfo 对象相反,后者的情况较为复杂,与 CultureInfo 对象关联的名称中进行了相关说明。
构造 RegionInfo 对象并访问其名称
首先考虑三个示例,它们都使用 RegionInfo.RegionInfo 来构造 RegionInfo 对象。在 .NET Framework 1.0 版中,这种方法非常简单。例如,应用程序可以指定:
“US”代表美国
“DE”代表德国
无自定义区域性
在 .NET Framework 2.0 版中,可继续在此上下文中使用诸如“US”和“DE”之类的字符串,但还引入了另一种方法。应用程序可以指定区域性名称来构造 RegionInfo 对象。只有地区部分是相关的:
“en-US”代表英语(美国)
“de-DE”代表德语(德国)
自定义区域性;例如,如果“fj-FJ”是所定义的自定义区域性,则应用程序可以使用它。
下表显示了其中每个对象为 RegionInfo.M:System.Globalization.RegionInfo.ToString 和 RegionInfo.P:System.Globalization.RegionInfo.Name 返回的值。请注意,无论构造方法如何,地区名称都是相同的。
方法 |
en-US |
De-DE |
自定义区域性 |
---|---|---|---|
(传递给构造函数的地区) |
US |
DE |
(N/A) |
(传递给构造函数的区域性, 在 .NET Framework 2.0 版中引入) |
en-US |
De-DE |
fj-FJ |
RegionInfo.ToString() |
US |
DE |
FJ |
RegionInfo.Name |
US |
DE |
FJ |
每个地区都具有 DisplayName、EnglishName、NativeName、ThreeLetterISORegionName、ThreeLetterWindowsRegionName 和 TwoLetterISORegionName。所有这些也与构造方法无关。
按标识符构造 RegionInfo 对象
应用程序还可以通过使用 RegionInfo.RegionInfo 并指定区域性标识符来构造 RegionInfo 对象。在此情况下,传递给上一节中所用示例的构造函数的 culture 值为:
0x0409 代表美国英语
0x0407 代表德语(德国)
0x0c00 代表自定义区域性“fj-FJ”;仅当“fj-FJ”是当前默认用户区域性时,才可以使用此区域性标识符。
下表显示了返回的名称。这些名称以及其他所有名称(例如,DisplayName 和 EnglishName)都与构造方法无关。
Method |
en-US |
De-DE |
自定义区域性 |
---|---|---|---|
(传递给构造函数的区域性标识符) |
0x0409 |
0x0407 |
0x0c00 |
RegionInfo.ToString() |
US |
DE |
FJ |
RegionInfo.Name |
US |
DE |
FJ |