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

    1. /// <summary>全角半角的相互转换  
    2. ///   
    3. /// </summary>  
    4. public class ConvertDBCAndSBC  
    5. {  
    6.    
    7.     /// <summary>半角转成全角  
    8.     /// 半角空格32,全角空格12288  
    9.     /// 其他字符半角33~126,其他字符全角65281~65374,相差65248  
    10.     /// </summary>  
    11.     /// <param name="input"></param>  
    12.     /// <returns></returns>  
    13.     public string DBCToSBC(string input)  
    14.     {  
    15.         char[] cc = input.ToCharArray();  
    16.         for(int i=0;i<cc.Length;i++)  
    17.         {  
    18.             if(cc[i] == 32)  
    19.             {  
    20.                 // 表示空格  
    21.                 cc[i]=(char)12288;  
    22.                 continue;  
    23.             }  
    24.             if(cc[i] < 127 && cc[i] > 32)  
    25.             {  
    26.                 cc[i]=(char)(cc[i]+65248);                  
    27.             }  
    28.         }  
    29.         return new string(cc);  
    30.     }  
    31.   
    32.     /// <summary>全角转半角  
    33.     /// 半角空格32,全角空格12288  
    34.     /// 其他字符半角33~126,其他字符全角65281~65374,相差65248  
    35.     /// </summary>  
    36.     /// <param name="input"></param>  
    37.     /// <returns></returns>  
    38.     public string SBCToDBC(string input)  
    39.     {  
    40.         char[] cc = input.ToCharArray();  
    41.         for (int i = 0; i < cc.Length; i++)  
    42.         {  
    43.             if(cc[i] == 12288)  
    44.             {  
    45.                 // 表示空格  
    46.                 cc[i] = (char)32;  
    47.                 continue;  
    48.             }  
    49.             if (cc[i] > 65280 && cc[i] < 65375)  
    50.             {  
    51.                 cc[i] = (char)(cc[i] - 65248);                  
    52.             }  
    53.   
    54.         }  
    55.         return new string(cc);  
    56.     }  
    57. }  


    测试代码: 

    C#代码  收藏代码
    1. static void Main(string[] args)  
    2. {  
    3.     Console.Write("请输入要转为半角的字符:");  
    4.     string str = Console.ReadLine();  
    5.     Console.WriteLine("半角:" + new ConvertDBCAndSBC().SBCToDBC(str));  
    6.     Console.ReadLine();  
    7.   
    8.     Console.Write("请输入要转为全角的字符:");  
    9.     string str2 = Console.ReadLine();  
    10.     Console.WriteLine("全角:" + new ConvertDBCAndSBC().DBCToSBC(str2));  
    11.     Console.ReadLine();  
    12. }  


    测试效果: 

  • 相关阅读:
    StatusStrip控件中元素右对齐方法两则
    在EF4.0中获取ObjectContext的数据库连接字符串
    通过反射调用泛型参数方法
    阻止保存要求重新创建表的更改
    [转]表达式解析的全部源码
    让ADO.NET SelfTracking Entity Generator产生的实体类支持RejectChanges()方法
    关于XtraGrid的CustomUnboundColumnData事件的触发条件
    WCF远程服务器强制关闭了一个连接
    让Sandcastle Help File Builder支持VS2010
    ==Entity Framework DBContext 增删改查深度解析
  • 原文地址:https://www.cnblogs.com/songtzu/p/2627239.html
Copyright © 2011-2022 走看看