string[] arr = { "地", "王一", "二", "大", "水", "國", "觀","王二" };
CultureInfo StrokCi = new CultureInfo(133124);
Thread.CurrentThread.CurrentCulture = StrokCi;
Array.Sort(arr); //按筆畫數排序
Thread.CurrentThread.CurrentCulture = new CultureInfo("zh-cn");
Array.Sort(arr); //按拼音排序
參考:http://www.cnblogs.com/zfanlong1314/p/4550070.html
class Program
{
static void Main(string[] args)
{
string[] arr = { "趙(ZHAO)", "錢(QIAN)", "孫(SUN)", "李(LI)", "周(ZHOU)", "吳(WU)", "鄭(ZHENG)", "王(WANG)"};
//發音 LCID:0x00000804
CultureInfo PronoCi = new CultureInfo(2052);
//Thread.CurrentThread.CurrentCulture = new CultureInfo("en-us");
Array.Sort(arr);
Console.WriteLine("按發音排序:");
for (int i = arr.GetLowerBound(0); i <= arr.GetUpperBound(0); i++)
Console.WriteLine("[{0}]:\t{1}", i, arr.GetValue(i));
Console.WriteLine();
//筆畫數 LCID:0x00020804
CultureInfo StrokCi = new CultureInfo(133124);
Thread.CurrentThread.CurrentCulture = StrokCi;
Array.Sort(arr);
Console.WriteLine("按筆划數排序:");
for (int i = arr.GetLowerBound(0); i <= arr.GetUpperBound(0); i++)
Console.WriteLine("[{0}]:\t{1}", i, arr.GetValue(i));
Console.WriteLine();
//zh-cn (拼音:簡中)
Thread.CurrentThread.CurrentCulture = new CultureInfo("zh-cn");
Array.Sort(arr);
Console.WriteLine("zh-cn:");
for (int i = arr.GetLowerBound(0); i <= arr.GetUpperBound(0); i++)
Console.WriteLine("[{0}]:\t{1}", i, arr.GetValue(i));
Console.WriteLine();
//zh-tw (筆划數:繁中)
Thread.CurrentThread.CurrentCulture = new CultureInfo("zh-tw");
Array.Sort(arr);
Console.WriteLine("zh-tw:");
for (int i = arr.GetLowerBound(0); i <= arr.GetUpperBound(0); i++)
Console.WriteLine("[{0}]:\t{1}", i, arr.GetValue(i));
Console.ReadKey();
}
}