手机
当前位置:查字典教程网 >编程开发 >C#教程 >c#转换全角半角方法示例
c#转换全角半角方法示例
摘要:C#全角转换成半角新建一个项目quanbanjiao,在此项目下新建一个类Class1复制代码代码如下:usingSystem;usingS...

C#全角转换成半角

新建一个项目quanbanjiao,在此项目下新建一个类Class1

复制代码 代码如下:

using System;

using System.Web;

using System.Text;

namespace quanbanjiao

{

public class Class1

{

/**/

/// <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>

public static bool IsBjChar(char c)

{

int i = (int)c;

return i >= 32 && i <= 126;

}

/**/

/// <summary>

/// 判断字符是否全角字符或标点

/// </summary>

/// <remarks>

/// <para>全角字符 - 65248 = 半角字符</para>

/// <para>全角空格例外</para>

/// </remarks>

public static bool IsQjChar(char c)

{

if (c == 'u3000') return true;

int i = (int)c - 65248;

if (i < 32) return false;

return IsBjChar((char)i);

}

/// <summary>

/// 将字符串中的全角字符转换为半角

/// </summary>

public static string ToBj(string type,string s)

{

if (s == null || s.Trim() == string.Empty) return s;

StringBuilder sb = new StringBuilder(s.Length);

for (int i = 0; i < s.Length; i++)

{

if (s[i] == 'u3000')

sb.Append('u0020');

else if (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";

}

}

return sb.ToString();

}

}

}

【c#转换全角半角方法示例】相关文章:

C#操作注册表的方法

用C#实现启动另一程序的方法实例

C# 全角和半角转换以及判断的简单代码

c#数据库与TXT导入导出的实例

将ocx文件转换成C#程序引用的DLL文件的办法

c#实现sunday算法实例

c# 获得局域网主机列表实例

解决C#全屏幕截图的实现方法

C#实现对AES加密和解密的方法

C# 拓展方法的简单实例

精品推荐
分类导航