C#計算字符串長度,漢字算兩個字符

在C#中的字符串類String中,有個Length屬性表示字符串的長度,但該字段返回的是字符的個數,如果字符串中含有中文字符的話,一個漢字佔用兩個字符的長度,此時獲取的長度就不夠精確,當然也看具體業務需要。以下方法可用於計算字符串長度,字符串中的一個漢字計爲兩個字符。
/// <summary>
/// 得到字符串長度,一個漢字長度爲2
/// </summary>
/// <param name="inputString">參數字符串</param>
/// <returns></returns>
public static int StrLength(string inputString)
{
System.Text.ASCIIEncoding ascii = new System.Text.ASCIIEncoding();
int tempLen = 0;
byte[] s = ascii.GetBytes(inputString);
for (int i = 0; i < s.Length; i++)
{
if ((int)s[i] == 63)
tempLen += 2;
else
tempLen += 1;
}
return tempLen;
}

備註:此原創文章最早發表於博主個人站,原文鏈接C#計算字符串長度,漢字算兩個字符_IT技術小趣屋,轉載請標明出處。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章