c# 区域性的 NumberStyles NumberFormatInfo 区域性比较CompareInfo

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Globalization;
namespace NumberFormatInfoSample
{
    class Program
    {
        static void Main(string[] args)
        {
            #region 区域性 NumberFormatInfo NumberStyles
            //CultureInfo[] culturesList = CultureInfo.GetCultures(CultureTypes.AllCultures);
            //foreach (CultureInfo cultureItem in culturesList)
            //{
            //    Console.WriteLine(cultureItem.Name);
            //}
            //string selection = string.Empty;
            //while (selection != "QUIT")
            //{
            //    Console.WriteLine("Please enter selected Culture and Region from the list"+"above or type Quit to exit");
            //    selection = Console.ReadLine().ToUpper();
            //    switch (selection)
            //    {
            //        case "QUIT":
            //            break;
            //        default:
            //            CultureInfo selectedCulture=new CultureInfo(selection);
            //            NumberFormatInfo formats=selectedCulture.NumberFormat;
            //            Console.WriteLine("请输入一个数字值");
            //            int value=int.Parse(Console.ReadLine(),NumberStyles.Number,selectedCulture.NumberFormat);
            //            string textValue=value.ToString("C",formats);
            //            Console.WriteLine(textValue);
            //            int numericValue=int.Parse(textValue,NumberStyles.Currency,selectedCulture.NumberFormat);
            //           Console.WriteLine(numericValue.ToString());
            //            break;
            //    }
            //}
            #endregion
            #region 区域性Parse
            //string val = " -1,234,567.890";
            //double i = double.Parse(val, NumberStyles.AllowLeadingSign |
            //NumberStyles.AllowDecimalPoint |
            //NumberStyles.AllowThousands |
            //NumberStyles.AllowLeadingWhite |
            //NumberStyles.AllowTrailingWhite);
            //Console.WriteLine(i.ToString());
            #endregion

            #region CompareInfo区域性的比较
            CultureInfo[] culturesList = CultureInfo.GetCultures(CultureTypes.AllCultures);
            foreach (CultureInfo cultureItem in culturesList)
            {
                Console.WriteLine(cultureItem.Name);
            }
            string selection = string.Empty;
            while (selection != "QUIT")
            {
                Console.WriteLine("Please enter selected Culture and Region from the list" + "above or type Quit to exit");
                selection = Console.ReadLine().ToUpper();
                switch (selection)
                {
                    case "QUIT":
                        break;
                    default:
                       
                        CultureInfo selectedCulture = new CultureInfo(selection);
                        CompareInfo myCom = selectedCulture.CompareInfo;
                        int result1 = myCom.Compare("Albert", "albert", CompareOptions.IgnoreCase);
                        Console.WriteLine(result1);
                        int result2 = myCom.Compare("Albert", "albert", CompareOptions.None);
                        Console.WriteLine(result2);
                        break;
                }
            }
            #endregion
            Console.ReadKey();

        }
    }
}

 

posted on 2012-12-05 19:29  R.Ray  阅读(978)  评论(0)    收藏  举报

导航