300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > c# 中文字符(全角 半角)通用处理

c# 中文字符(全角 半角)通用处理

时间:2023-09-24 04:45:34

相关推荐

c# 中文字符(全角 半角)通用处理

声明:本文仅提供一种编程思路,所提供代码仅供参考,如需使用,请自行完善。我们在做程序的的时候经常要处理用户输入,作为我们的主要语言中文,经常会出现全角、半角的问题,这会在查询时给我们带来很多麻烦。本文采用扩展方法解决全半角切换的问题,效果图

代码如下: publicstaticvoidExample(stringuserInput){stringsbc=userInput.ToSBC();//转全角//具体操作,如存入数据库stringdbc=userInput.ToDBC();//转半角//具体操作,如存入数据库}///<summary>///转全角(SBCcase)///</summary>///<paramname="input">任意字符串</param>///<returns>全角字符串</returns>publicstaticstringToSBC(thisstringinput){char[]c=input.ToCharArray();for(inti=0;i<c.Length;i++){if(c[i]==32){c[i]=(char)12288;continue;}if(c[i]<127)c[i]=(char)(c[i]+65248);}returnnewstring(c);}///<summary>///转半角(DBCcase)///</summary>///<paramname="input">任意字符串</param>///<returns>半角字符串</returns>publicstaticstringToDBC(thisstringinput){char[]c=input.ToCharArray();for(inti=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);}returnnewstring(c);}

中文处理中另一个常用的是获取拼音首字母,如:中华人民共和国,首字母为ZHRMGHG。很多库存管理程序中都将这个作为助记码,用作快速查询。这里只给出扩展定义和示例,具体实现网上很多,但大部分都不能解决多音字的问题。

publicstaticvoidExample2(stringproductName){stringshortName=productName.GetChineseSpell();}///<summary>///获取汉字拼音首字母///</summary>///<paramname="s">输入</param>///<returns>汉字拼音首字母,其它字符原样返回</returns>publicstaticstringGetChineseSpell(thisstrings){returnnull;//请自行完成}

还有中文简体繁体互转,也可以扩展进来。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。