c#全半角转换

本文介绍了一个用于将字符串从半角转换为全角或从全角转换为半角的C#函数。通过遍历输入字符串中的每个字符,该函数根据ASCII值进行相应的转换。全角字符如空格被转换为Unicode值为12288的字符,而其他字符则通过加减65248来实现全角到半角或半角到全角的转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<span style="white-space:pre">	</span>/// 转全角的函数(SBC case)
        ///任意字符串
        ///全角字符串
        ///全角空格为12288,半角空格为32
        ///其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248
        public static 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);
        }
		
	//  转半角的函数(DBC case)
        // 任意字符串
        // 半角字符串
        // 全角空格为12288,半角空格为32
        // 其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248
        public static 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);
            }
            return new String(c);
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值