C# 全角和半角轉(zhuǎn)換以及判斷的簡單代碼
更新時(shí)間:2013年07月10日 11:13:18 作者:
這篇文章介紹了在C#中判斷和轉(zhuǎn)換全角半角的方法,有需要的朋友可以參考一下
1. 判斷是否為全角半角
全角占用二個(gè)字節(jié) 半角占用一個(gè)字節(jié) 用string.length 和System.text.Encoding.Default.GetByteCount 其中string.length表示字符串的字符數(shù),
System.text.Encoding.Default.GetByteCount表示字符串的字節(jié)數(shù)。
判斷半角(是半角則true)
如下:
if (checkString.Length == Encoding.Default.GetByteCount(checkString)) { return true; } else { return false; }
全角(是全角則返回true)
如下:
if (2 * checkString.Length == Encoding.Default.GetByteCount(checkString)) { return true; } else { return false; }
2.全角半角轉(zhuǎn)換
#region 全角半角轉(zhuǎn)換
/// <summary>
/// 轉(zhuǎn)全角的函數(shù)(SBC case)
/// </summary>
/// <param name="input">任意字符串</param>
/// <returns>全角字符串</returns>
///<remarks>
///全角空格為12288,半角空格為32
///其他字符半角(33-126)與全角(65281-65374)的對應(yīng)關(guān)系是:均相差65248
///</remarks>
public static string ToSBC(string input)
{
//半角轉(zhuǎn)全角:
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);
}
/// <summary> 轉(zhuǎn)半角的函數(shù)(DBC case) </summary>
/// <param name="input">任意字符串</param>
/// <returns>半角字符串</returns>
///<remarks>
///全角空格為12288,半角空格為32
///其他字符半角(33-126)與全角(65281-65374)的對應(yīng)關(guān)系是:均相差65248
///</remarks>
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);
}
#endregion
全角占用二個(gè)字節(jié) 半角占用一個(gè)字節(jié) 用string.length 和System.text.Encoding.Default.GetByteCount 其中string.length表示字符串的字符數(shù),
System.text.Encoding.Default.GetByteCount表示字符串的字節(jié)數(shù)。
判斷半角(是半角則true)
如下:
復(fù)制代碼 代碼如下:
if (checkString.Length == Encoding.Default.GetByteCount(checkString)) { return true; } else { return false; }
全角(是全角則返回true)
如下:
復(fù)制代碼 代碼如下:
if (2 * checkString.Length == Encoding.Default.GetByteCount(checkString)) { return true; } else { return false; }
2.全角半角轉(zhuǎn)換
復(fù)制代碼 代碼如下:
#region 全角半角轉(zhuǎn)換
/// <summary>
/// 轉(zhuǎn)全角的函數(shù)(SBC case)
/// </summary>
/// <param name="input">任意字符串</param>
/// <returns>全角字符串</returns>
///<remarks>
///全角空格為12288,半角空格為32
///其他字符半角(33-126)與全角(65281-65374)的對應(yīng)關(guān)系是:均相差65248
///</remarks>
public static string ToSBC(string input)
{
//半角轉(zhuǎn)全角:
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);
}
/// <summary> 轉(zhuǎn)半角的函數(shù)(DBC case) </summary>
/// <param name="input">任意字符串</param>
/// <returns>半角字符串</returns>
///<remarks>
///全角空格為12288,半角空格為32
///其他字符半角(33-126)與全角(65281-65374)的對應(yīng)關(guān)系是:均相差65248
///</remarks>
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);
}
#endregion
相關(guān)文章
Chrome Visual Studio 2005下的編譯過程
研究Chrome ,首先得把它編譯出來,這對于后續(xù)的代碼分析和閱讀有很大的幫助,想想自己編譯出一個(gè) Chrome 瀏覽器來使用,那是一件很炫的事情。2009-07-07
C#定義并實(shí)現(xiàn)單鏈表實(shí)例解析
這篇文章主要介紹了C#定義并實(shí)現(xiàn)單鏈表實(shí)例解析,有助于讀者加深對C#實(shí)現(xiàn)數(shù)據(jù)結(jié)構(gòu)的理解,需要的朋友可以參考下2014-07-07
C#中DateTime.Compare()比較時(shí)間大小
本文主要介紹了C#中DateTime.Compare()比較時(shí)間大小,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04
在WPF中合并兩個(gè)ObservableCollection集合
這篇文章介紹了在WPF中合并兩個(gè)ObservableCollection集合的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06
基于Kubernetes實(shí)現(xiàn)前后端應(yīng)用的金絲雀發(fā)布(兩種方案)
這篇文章主要介紹了基于Kubernetes實(shí)現(xiàn)前后端應(yīng)用的金絲雀發(fā)布,文中給大家提到了兩種常用方案,通過示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-12-12
C#?漢字與拼音互轉(zhuǎn)的實(shí)現(xiàn)示例
本文主要介紹了C#?漢字與拼音互轉(zhuǎn)的實(shí)現(xiàn)示例,文中根據(jù)實(shí)例編碼詳細(xì)介紹的十分詳盡,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03
C#三種方法獲取文件的Content-Type(MIME Type)
這篇文章介紹了C#獲取文件Content-Type(MIME Type)的三種方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-01-01

