zoukankan      html  css  js  c++  java
  • 全角字符转换为半角

    方法一:
    /// <summary>
        
    /// 判断字符是否英文半角字符或标点
        
    /// </summary>
        
    /// <remarks>
        
    /// 32    空格
        
    /// 33-47    标点
        
    /// 48-57    0~9
        
    /// 58-64    标点
        
    /// 65-90    A~Z
        
    /// 91-96    标点
        
    /// 97-122    a~z
        
    /// 123-126  标点
        
    /// </remarks>

        public static bool IsBjChar(char c)
        
    {
          
    int i = (int)c;
          
    return i >= 32 && i <= 126;
        }


        
    /// <summary>
        
    /// 判断字符是否全角字符或标点
        
    /// </summary>
        
    /// <remarks>
        
    /// <para>全角字符 - 65248 = 半角字符</para>
        
    /// <para>全角空格例外</para>
        
    /// </remarks>

        public static bool IsQjChar(char c)
        
    {
          
    if (c == '\u3000'return true;

          
    int i = (int)c - 65248;
          
    if (i < 32return false;
          
    return IsBjChar((char)i);
        }


        
    /// <summary>
        
    /// 将字符串中的全角字符转换为半角
        
    /// </summary>

        public static string ToBj(string s)
        
    {
          
    if (s == null || s.Trim() == string.Empty) return s;

          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();
        }


    方法二:
    添加 Microsoft Visual Basic.NET Runtime 引用。
    Console.WriteLine(Microsoft.VisualBasic.Strings.StrConv("abcdefg", VbStrConv.Narrow, 0));
  • 相关阅读:
    Eclipse集成Maven的Web工程demo(独立及Maven集成tomcat)
    Spring Boot的常见配置项解析
    SpringBoot入门demo
    简单句障碍的解决
    阅读理解(2000年统考)
    Java Web项目实战第1篇之环境搭建
    [STM32F10x] 利用定时器测量脉冲宽度
    [STM32F10x] 利用定时器测量频率
    STM32 输入捕获的脉冲宽度及频率计算
    RT-Thread—STM32—在线升级(Ymodem_OTA、HTTP_OTA)
  • 原文地址:https://www.cnblogs.com/ami/p/588435.html
Copyright © 2011-2022 走看看