zoukankan      html  css  js  c++  java
  • 按不同国家语言进行字符串排序

    void Page_Load(object sender, EventArgs e)
        
    {
            
    //测试数据
            string[] myArr = new string[6];
            myArr[
    0= "地域";
            myArr[
    1= "地図";
            myArr[
    2= "路線";
            myArr[
    3= "道路交通";
            myArr[
    4= "電話帳";
            myArr[
    5= "自動車";
            
            
    //没有排序
            Gridview1.DataSource = myArr;
            Gridview1.DataBind();

            
    //简体中文排序
            MyStringComparer myComp = new MyStringComparer(CompareInfo.GetCompareInfo("zh-CN"), CompareOptions.None);
            Array.Sort(myArr, myComp);
            Gridview2.DataSource 
    = myArr;
            Gridview2.DataBind();

            
    //日语排序
            myComp = new MyStringComparer(CompareInfo.GetCompareInfo("ja-JP"), CompareOptions.None);
            Array.Sort(myArr, myComp);
            Gridview3.DataSource 
    = myArr;
            Gridview3.DataBind();
        }


        
    private class MyStringComparer : IComparer
        
    {
            
    private CompareInfo myComp;
            
    private CompareOptions myOptions = CompareOptions.None;

            
    // Constructs a comparer using the specified CompareOptions.
            public MyStringComparer(CompareInfo cmpi, CompareOptions options)
            
    {
                myComp 
    = cmpi;
                
    this.myOptions = options;
            }


            
    // Compares strings with the CompareOptions specified in the constructor.
            public int Compare(Object a, Object b)
            
    {
                
    if (a == b) return 0;
                
    if (a == nullreturn -1;
                
    if (b == nullreturn 1;

                
    string sa = a.ToString();
                
    string sb = b.ToString();
                
    if (sa != null && sb != null)
                    
    return myComp.Compare(sa, sb, myOptions);
                
    throw new ArgumentException("a and b should be strings.");

            }

        }
  • 相关阅读:
    作为【开发人员】如何持续提升自己的开发技能
    永远不要放弃做梦的权利---与所有程序员们共勉
    十种更好的表达“你的代码写的很烂”的方法---总有些人的代码让人难以忍受
    程序员技术练级攻略--练成这样,成神仙了!
    创业其实是个逻辑问题![想不想创业都来看看]
    多图震撼!数字的未来,2013报告
    记最难忘的一件事 等笑话一箩筐
    HDU4666 Hyperspace(曼哈顿)
    POJ3436 ACM Computer Factory(最大流)
    再思考
  • 原文地址:https://www.cnblogs.com/goodspeed/p/62715.html
Copyright © 2011-2022 走看看