全角字符转换为半角

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

None.gif      public   static   bool  IsBjChar( char  c)
ExpandedBlockStart.gifContractedBlock.gif    
dot.gif {
InBlock.gif      
int i = (int)c;
InBlock.gif      
return i >= 32 && i <= 126;
ExpandedBlockEnd.gif    }

None.gif
ExpandedBlockStart.gifContractedBlock.gif    
/**/ /// <summary>
InBlock.gif    
/// 判断字符是否全角字符或标点
InBlock.gif    
/// </summary>
InBlock.gif    
/// <remarks>
InBlock.gif    
/// <para>全角字符 - 65248 = 半角字符</para>
InBlock.gif    
/// <para>全角空格例外</para>
ExpandedBlockEnd.gif    
/// </remarks>

None.gif      public   static   bool  IsQjChar( char  c)
ExpandedBlockStart.gifContractedBlock.gif    
dot.gif {
InBlock.gif      
if (c == '\u3000'return true;
InBlock.gif
InBlock.gif      
int i = (int)c - 65248;
InBlock.gif      
if (i < 32return false;
InBlock.gif      
return IsBjChar((char)i);
ExpandedBlockEnd.gif    }

None.gif
ExpandedBlockStart.gifContractedBlock.gif    
/**/ /// <summary>
InBlock.gif    
/// 将字符串中的全角字符转换为半角
ExpandedBlockEnd.gif    
/// </summary>

None.gif      public   static   string  ToBj( string  s)
ExpandedBlockStart.gifContractedBlock.gif    
dot.gif {
InBlock.gif      
if (s == null || s.Trim() == string.Empty) return s;
InBlock.gif
InBlock.gif      StringBuilder sb 
= new StringBuilder(s.Length);
InBlock.gif      
for (int i = 0; i < s.Length; i++)
ExpandedSubBlockStart.gifContractedSubBlock.gif      
dot.gif{
InBlock.gif        
if (s[i] == '\u3000')
InBlock.gif          sb.Append(
'\u0020');
InBlock.gif        
else if (IsQjChar(s[i]))
InBlock.gif          sb.Append((
char)((int)s[i] - 65248));
InBlock.gif        
else
InBlock.gif          sb.Append(s[i]);
ExpandedSubBlockEnd.gif      }

InBlock.gif
InBlock.gif      
return sb.ToString();
ExpandedBlockEnd.gif    }

None.gif

方法二:
添加 Microsoft Visual Basic.NET Runtime 引用。
Console.WriteLine(Microsoft.VisualBasic.Strings.StrConv("abcdefg", VbStrConv.Narrow, 0));

转载于:https://www.cnblogs.com/ami/archive/2006/12/11/588435.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值