• 获取 汉字的首字母(例如张三返回zs)核心方法chinesecap()


    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;

    namespace getPinYin
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            private void button1_Click(object sender, EventArgs e)
            {
                string a = this.textBox1.Text;
                classfun f = new classfun();
                string k = f.chinesecap(a);
                MessageBox.Show(k);
            }


            #region 1

            public class classfun
            {
                private string capstr;

                public classfun()
                {
                    //
                    // todo: 在此处添加构造函数逻辑
                    //
                }
                public string chinesecap(string chinesestr)
    {


    byte[] zw = new byte[2];
    long chinesestr_int;
    string charstr,chinastr="";
    for (int i=0;i<=chinesestr.Length-1;i++)
    {
    charstr=chinesestr.Substring(i,1).ToString();
    zw=System.Text.Encoding.Default.GetBytes(charstr);
    // 得到汉字符的字节数组
    if(zw.Length==2)
    {
    int i1 = (short)(zw[0]);
    int i2 = (short)(zw[1]);
    chinesestr_int=i1*256+i2;
    //table of the constant list
    // a; //45217..45252
    // b; //45253..45760
    // c; //45761..46317
    // d; //46318..46825
    // e; //46826..47009
    // f; //47010..47296
    // g; //47297..47613

    // h; //47614..48118
    // j; //48119..49061
    // k; //49062..49323
    // l; //49324..49895
    // m; //49896..50370
    // n; //50371..50613
    // o; //50614..50621
    // p; //50622..50905
    // q; //50906..51386

    // r; //51387..51445
    // s; //51446..52217
    // t; //52218..52697
    //没有u,v
    // w; //52698..52979
    // x; //52980..53640
    // y; //53689..54480
    // z; //54481..55289

    if ((chinesestr_int>=45217) && (chinesestr_int<=45252))
    {
    chinastr= "a";
    }
    else if ((chinesestr_int>=45253) && (chinesestr_int<=45760))
    {
    chinastr= "b";
    }
    else if ((chinesestr_int>=45761) && (chinesestr_int<=46317))
    {
    chinastr= "c";

    }
    else if ((chinesestr_int>=46318) && (chinesestr_int<=46825))
    {
    chinastr= "d";
    }
    else if ((chinesestr_int>=46826) && (chinesestr_int<=47009))
    {
    chinastr= "e";
    }
    else if ((chinesestr_int>=47010) && (chinesestr_int<=47296))
    {
    chinastr= "f";
    }
    else if ((chinesestr_int>=47297) && (chinesestr_int<=47613))
    {
    chinastr= "g";
    }
    else if ((chinesestr_int>=47614) && (chinesestr_int<=48118))
    {

    chinastr= "h";
    }

    else if ((chinesestr_int>=48119) && (chinesestr_int<=49061))
    {
    chinastr= "j";
    }
    else if ((chinesestr_int>=49062) && (chinesestr_int<=49323))
    {
    chinastr= "k";
    }
    else if ((chinesestr_int>=49324) && (chinesestr_int<=49895))
    {
    chinastr= "l";
    }
    else if ((chinesestr_int>=49896) && (chinesestr_int<=50370))
    {
    chinastr= "m";
    }

    else if ((chinesestr_int>=50371) && (chinesestr_int<=50613))
    {
    chinastr= "n";

    }
    else if ((chinesestr_int>=50614) && (chinesestr_int<=50621))
    {
    chinastr= "o";
    }
    else if ((chinesestr_int>=50622) && (chinesestr_int<=50905))
    {
    chinastr= "p";

    }
    else if ((chinesestr_int>=50906) && (chinesestr_int<=51386))
    {
    chinastr= "q";

    }

    else if ((chinesestr_int>=51387) && (chinesestr_int<=51445))
    {
    chinastr= "r";
    }
    else if ((chinesestr_int>=51446) && (chinesestr_int<=52217))
    {
    chinastr= "s";
    }
    else if ((chinesestr_int>=52218) && (chinesestr_int<=52697))
    {
    chinastr= "t";
    }
    else if ((chinesestr_int>=52698) && (chinesestr_int<=52979))
    {
    chinastr= "w";
    }
    else if ((chinesestr_int>=52980) && (chinesestr_int<=53640))
    {
    chinastr= "x";
    }
    else if ((chinesestr_int>=53689) && (chinesestr_int<=54480))
    {
    chinastr= "y";
    }
    else if ((chinesestr_int>=54481) && (chinesestr_int<=55289))
    {
    chinastr= "z";
    }

    }
    else
    {
    capstr=chinesestr;
    break;
    }

    capstr=capstr+chinastr;
    }

    return capstr;

    }


            }


            #endregion
        }
    }

  • 相关阅读:
    20191024-1 每周例行报告
    20191017-1 每周例行报告
    20191010-2 每周例行报告
    梁梦瑶 20190919-4 单元测试
    交换机配置VLAN Cisco packet
    20191128-1 总结
    20191121-1 每周例行报告
    20191114-1 每周例行报告
    对组内成员的感谢博客
    每周例行报告
  • 原文地址:https://www.cnblogs.com/bnjbl/p/743112.html
Copyright © 2020-2023  润新知