• 全角转半角,半角转全角,判断字符是否为全角


    /// <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/
    文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    加密的PDF文件怎么查看
    SQL Server数据库中怎么加密数据
    虚拟磁盘也加密
    怎么用密码保护您的文件夹
    如何用cmd命令加密文件夹
    快压轻松创建加密压缩包
    GPS学习的一些链接
    【最新软件预告】邮件群发器Console版
    第六格很酷的滚动活动会员条
    邀请您加入移动开发专家联盟
  • 原文地址:https://www.cnblogs.com/zhangtao/p/1559861.html
Copyright © 2020-2023  润新知