与 RegionInfo 对象关联的名称
与 RegionInfo 关联的区域名称有多种变体。 基本名称由 Name 表示。 该类还支持显示名称、英文名称、本地名称和其他名称的属性。 尽管有多个名称可用于构造 RegionInfo 对象,但是该对象一旦创建,就只有一个名称与其相关联。 这一命名机制与 CultureInfo 对象相反,后者的情况较为复杂,与 CultureInfo 对象关联的名称中进行了相关说明。
区域名称的处理方式取决于用于 RegionInfo 的构造函数。 该类定义一个构造函数,应用程序将为该构造函数传递一个区域名称,此外还会定义一个用于处理区域名称(使用区域性标识符)的构造函数。
使用区域名称构造区域信息时的名称处理方式
传递区域名称以创建 RegionInfo 对象时,应用程序使用接受名称字符串的构造函数。 让我们考虑一个传递美国和德国的区域名称字符串的示例。 在 .NET Framework 1.0 版本中,命名机制非常简单,应用程序指定下列各项:
“US”代表美国
“DE”代表德国
“无”代表自定义区域性
在 .NET Framework 2.0 版中,可继续在此上下文中使用诸如“US”和“DE”之类的字符串,但还引入了另一种方法。 应用程序可以指定区域性名称来构造 RegionInfo 对象,如下所示(只有地区部分是相关的)。 请注意,应用程序还会指定自定义区域性的名称。
“en-US”代表英语(美国)
“de-DE”代表德语(德国)
“fj-FJ”代表自定义区域性
下表显示了 System.Globalization.RegionInfo.ToString 和 System.Globalization.RegionInfo.Name 处理的区域命名机制。
方法 |
en-US |
de-DE |
自定义区域性 |
---|---|---|---|
(传递给构造函数的地区) |
US |
DE |
(N/A) |
(传递给构造函数的区域性, 在 .NET Framework 2.0 版本中引入) |
en-US |
de-DE |
fj-FJ |
System.Globalization.RegionInfo.ToString |
US |
DE |
FJ |
System.Globalization.RegionInfo.Name |
US |
DE |
FJ |
使用区域性标识符构造区域信息时的名称处理方式
应用程序还可以通过使用接受区域性标识符的构造函数来构造 RegionInfo 对象。 让我们考虑一个向构造函数传递以下区域性标识符的示例:
0x0409 代表美国英语
0x0407 代表德语(德国)
0x0c00 代表自定义区域性“fj-FJ”;它必须是当前默认用户区域性。
下表显示了 System.Globalization.RegionInfo.ToString 和 System.Globalization.RegionInfo.Name 处理的区域命名机制。 请注意,这些名称与上例中的名称完全相同。
方法 |
en-US |
de-DE |
自定义区域性 |
---|---|---|---|
(传递给构造函数的区域性标识符) |
0x0409 |
0x0407 |
0x0c00 |
System.Globalization.RegionInfo.ToString |
US |
DE |
FJ |
System.Globalization.RegionInfo.Name |
US |
DE |
FJ |