目录
一、CultureInfo 类
二、CultureInfo.CreateSpecificCulture(String) 方法
1.定义
2.示例
一、CultureInfo 类
提供有关特定区域性(对于非托管代码开发,则称为“区域设置”)的信息。 这些信息包括区域性的名称、书写系统、使用的日历、字符串的排序顺序以及对日期和数字的格式化设置。
命名空间:
System.Globalization
程序集:
System.Runtime.dllpublic class CultureInfo : ICloneable, IFormatProvider继承
Object
CultureInfo
实现
IFormatProvider ICloneable
二、CultureInfo.CreateSpecificCulture(String) 方法
1.定义
创建表示与指定名称关联的特定区域性的 CultureInfo。
public static System.Globalization.CultureInfo CreateSpecificCulture (string name);参数
name
String
预定义的 CultureInfo 名称或现有 CultureInfo 的对象。 name 不区分大小写。返回
CultureInfo
一个表示以下内容的 CultureInfo 对象:如果 name 为空字符串(“”),则为固定区域性。
- 或 -
与 name 关联的特定区域性,如果 name 是非特定区域性。
- 或 -
由 name 指定的区域性,如果 name 已经是特定区域性。例外
CultureNotFoundException
name 不是有效的区域性名称。
- 或 -
name 指定的区域性没有特定的区域性与之关联。NullReferenceException
name 为 null。
2.示例
从 GetCultures 方法中检索表示非特定区域性的 对象的数组CultureInfo,并对数组进行排序。 当它循环访问数组中的元素时,它将每个非特定区域性的名称传递给 CreateSpecificCulture 方法,并显示该方法返回的特定区域性的名称。
// GetCultures 方法
using System.Globalization;
using System.Reflection;namespace ConsoleApp31
{public class Example{public static void Main(){// Display the header.Console.WriteLine("{0,-53}{1}", "CULTURE", "SPECIFIC CULTURE");// Get each neutral culture in the .NET Framework.CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.NeutralCultures);// Sort the returned array by name.Array.Sort(cultures, new NamePropertyComparer<CultureInfo>());// Determine the specific culture associated with each neutral culture.foreach (var culture in cultures){Console.Write("{0,-12} {1,-40}", culture.Name, culture.EnglishName);try{Console.WriteLine("{0}", CultureInfo.CreateSpecificCulture(culture.Name).Name);}catch (ArgumentException){Console.WriteLine("(no associated specific culture)");}}}}public class NamePropertyComparer<T> : IComparer<T>{int IComparer<T>.Compare(T x, T y){if (x == null)if (y == null)return 0;elsereturn -1;PropertyInfo pX = x.GetType().GetProperty("Name")!;PropertyInfo pY = y.GetType().GetProperty("Name")!;return string.Compare((string)pX.GetValue(x, null), (string)pY.GetValue(y, null));}}
}
// 运行结果:
/*CULTURE SPECIFIC CULTUREInvariant Language (Invariant Country)
aa Afar aa-ET
af Afrikaans af-ZA
agq Aghem agq-CM
ak Akan ak-GH
am Amharic am-ET
ar Arabic ar-SA
arn Mapuche arn-CL
as Assamese as-IN
asa Asu asa-TZ
ast Asturian ast-ES
az Azerbaijani az-Latn-AZ
az-Cyrl Azerbaijani (Cyrillic) az-Cyrl-AZ
az-Latn Azerbaijani (Latin) az-Latn-AZ
下面还有很多,此处省略*/