半角全角转换

2015-12-19 20:59:04  访问(1316) 赞(0) 踩(0)

  •  #region 半角全角转换
            /// <summary>
            /// 转全角的函数(SBC case)
            /// </summary>
            /// <param name="input">任意字符串</param>
            /// <returns>全角字符串</returns>
            ///<remarks>
            ///全角空格为12288,半角空格为32
            ///其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248
            ///</remarks>
            public static string ConvertToSBC(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);
            }
    
    
            /// <summary> 转半角的函数(DBC case) </summary>
            /// <param name="input">任意字符串</param>
            /// <returns>半角字符串</returns>
            ///<remarks>
            ///全角空格为12288,半角空格为32
            ///其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248
            ///</remarks>
            public static string ConvertToDBC(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);
                }
                return new string(c);
            }
            #endregion
    


标签:半角全角转换 

上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

类型:
内容:
  (Alt+Enter)