zoukankan      html  css  js  c++  java
  • 全角转半角,半角转全角,判断字符是否为全角

    /// <summary>
            
    /// 全角转半角的函数(DBC case)
            
    /// </summary>
            
    /// <param name="input">任意字符串</param>
            
    /// <returns>半角字符串</returns>
            
    ///<remarks>
            
    ///全角空格为12288,半角空格为32
            
    ///其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248
            
    ///</remarks>
            public string ToDBC(string input)
            {
                
    char[] c = input.ToCharArray();
                
    for (int i = 0; i < c.Length; i++)
                {
                    
    if (c[i] == 12288)
                    {
                        c[i] 
    = (char)32;
                        
    continue;
                    }
                    
    if (c[i] > 65280 && c[i] < 65375)
                        c[i] 
    = (char)(c[i] - 65248);
                }


                
    string str = c.ToString().Replace(""".");
                
    return new string(c);
            }


            
    /// <summary>
            
    /// 判断字符是否为全角字符
            
    /// </summary>
            
    /// <param name="c">任意字符</param>
            
    /// <returns>全角字符返回true,半角返回false</returns>
            public bool isCharDBC(char c)
            {
                
    if (c > 65280 && c < 65375)
                    
    return true;
                
    else
                    
    return false;
            }


            
    /// <summary>
            
    /// 半角转全角的函数(SBC case)
            
    /// </summary>
            
    /// <param name="input">任意字符串</param>
            
    /// <returns>全角字符串</returns>
            
    ///<remarks>
            
    ///全角空格为12288,半角空格为32
            
    ///其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248
            
    ///</remarks>        
            public string ToSBC(string input)
            {
                
    //半角转全角:
                char[] c = input.ToCharArray();
                
    for (int i = 0; i < c.Length; i++)
                {
                    
    if (c[i] == 32)
                    {
                        c[i] 
    = (char)12288;
                        
    continue;
                    }
                    
    if (c[i] < 127)
                        c[i] 
    = (char)(c[i] + 65248);
                }
                
    return new string(c);
            }
    作者:观海看云个人开发历程知识库 - 博客园
    出处:http://www.cnblogs.com/zhangtao/
    文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    Oracle中TO_DATE格式
    实现带查询功能的Combox控件
    Combox和DropDownList控件的区别
    C# 获取字符串中的数字
    C# try catch finally 执行
    树形DP codevs 1814 最长链
    codevs 2822 爱在心中
    匈牙利算法 cojs.tk 搭配飞行员
    匈牙利算法 codevs 2776 寻找代表元
    2016-6-19 动态规划,贪心算法练习
  • 原文地址:https://www.cnblogs.com/zhangtao/p/1559861.html
Copyright © 2011-2022 走看看