zoukankan      html  css  js  c++  java
  • c# 全角转半角

       /// <summary>
            ///判断字符是否英文半角字符或标点
            //32    空格
            //33-47    标点
            //48-57    0~9
            //58-64    标点
            //65-90    A~Z
            //91-96    标点
            //97-122    a~z
            //123-126  标点
            /// </summary>
            /// <param name="c"></param>
            /// <returns></returns>
            public static bool IsBjChar(char c)
            {
                int i = (int)c;
                return i >= 32 && i <= 126;
            }
    
            /// 判断字符是否全角字符或标点
            /// 全角字符 - 65248 = 半角字符
            /// 全角空格例外
    
            public static bool IsQjChar(char c)
            {
                if (c == 'u3000')
                {
                    return true;
                }
                int i = (int)c - 65248;
                if (i < 32)
                {
                    return false;
                }
                else
                {
                    return IsBjChar((char)i);
                }
            }
    
            /// <summary>
            /// 将字符串中的全角字符转换为半角
            /// </summary>
            /// <param name="s"></param>
            /// <returns></returns>
            public static string ToBj(string s)
            {
                if (s == null ||  string.IsNullOrEmpty(s.Trim()))
                {
                    return "";
                }
                else
                {
                    StringBuilder sb = new StringBuilder(s.Length);
                    for (int i = 0; i < s.Length; i++)
                    {
                        if (s[i] == 'u3000')
                        {
                            sb.Append('u0020');
                        }
                        else if (IsQjChar(s[i]))
                        {
                            sb.Append((char)((int)s[i] - 65248));
                        }
                        else
                        {
                            sb.Append(s[i]);
                        }
                    }
                    return sb.ToString();
                }
            }
  • 相关阅读:
    Git远程库
    Git的使用
    如何利用IO流复制文件
    Lambda表达式
    Lambda表达式的标准格式
    线程池的使用步骤
    解决线程安全的三个方法
    多线程
    位运算
    如何用javadoc生成java帮助文档
  • 原文地址:https://www.cnblogs.com/personblog/p/15337386.html
Copyright © 2011-2022 走看看