因為某種需求 (如要字串自動換行, 字串又中英文交叉 )
而需要判斷是否為中文字
方法很簡單重點只有一個 中文字起始範圍是0x4E00-0x9FFF
抓住這個去判斷就對了啦!!
//判斷指定字串內的指定位置是否為中文字
private bool CheckChineseString(string strInputString, int intIndexNumber)
{
int intCode = 0;
//中文範圍(0x4e00 - 0x9fff)轉換成int(intChineseFrom - intChineseEnd)
int intChineseFrom = Convert.ToInt32("4e00", 16);
int intChineseEnd = Convert.ToInt32("9fff", 16);
if (strInputString != "")
{
//取得input字串中指定判斷的index字元的unicode碼
intCode = Char.ConvertToUtf32(strInputString, intIndexNumber);
if (intCode >= intChineseFrom && intCode <= intChineseEnd)
{
return true; //如果是範圍內的數值就回傳true
}
else
{
return false; //如果是範圍外的數值就回傳true
}
}
return false;
}
原始文章出自於此
沒有留言:
張貼留言