c#转换全角半角方法示例
C#全角转换成半角
新建一个项目quanbanjiao,在此项目下新建一个类Class1
usingSystem;
usingSystem.Web;
usingSystem.Text;
namespacequanbanjiao
{
publicclassClass1
{
/**/
///<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>
publicstaticboolIsBjChar(charc)
{
inti=(int)c;
returni>=32&&i<=126;
}
/**/
///<summary>
///判断字符是否全角字符或标点
///</summary>
///<remarks>
///<para>全角字符-65248=半角字符</para>
///<para>全角空格例外</para>
///</remarks>
publicstaticboolIsQjChar(charc)
{
if(c=="\u3000")returntrue;
inti=(int)c-65248;
if(i<32)returnfalse;
returnIsBjChar((char)i);
}
///<summary>
///将字符串中的全角字符转换为半角
///</summary>
publicstaticstringToBj(stringtype,strings)
{
if(s==null||s.Trim()==string.Empty)returns;
StringBuildersb=newStringBuilder(s.Length);
for(inti=0;i<s.Length;i++)
{
if(s[i]=="\u3000")
sb.Append("\u0020");
elseif(IsQjChar(s[i]))
sb.Append((char)((int)s[i]-65248));
else
sb.Append(s[i]);
}
//如果是int类型的,则只能输入int类型,否则自动设为0
if(type.ToLower()=="int")
{
try
{
Convert.ToInt32(sb.ToString());
}
catch
{
return"0";
}
}
//如果是float或double类型的,则只能输入这两种类型,否则自动设为0
if(type.ToLower()=="float"||type.ToLower()=="double")
{
try
{
Convert.ToDouble(sb.ToString());
}
catch
{
return"0";
}
}
returnsb.ToString();
}
}
}
相关文章
- C#简单串口调试助手【傻瓜教程】chanson_chapter01[通俗易懂]
- C#中AssemblyInfo.cs文件详解
- 浅谈C#数组(一)
- Unity 3D/C# 错题集
- c# mysql executenonquery_C#与数据库访问技术总结(八)之ExecuteNonQuery方法
- C#实现十六进制与十进制相互转换以及及不同进制表示案例分享
- c#实现16进制和字符串之间转换的代码
- C#生转换网页为pdf
- C#数值转换-显式数值转换表(参考)
- C#全角和半角转换以及判断的简单代码
- C#常用的数据格式转换汇总
- C#byte数组与Image相互转换的方法
- C#中lock用法详解
- C#实现HTML和UBB互相转换的方法
- C#中使用强制类型实现字符串和ASCII码之间的转换
- C#中把英文字母转换为大写或小写的方法
- C#的WebBrowser操作frame实例解析
- C#基础之委托用法实例教程
- C#模板方法模式(TemplateMethodPattern)实例教程