MONO中文MONO平台技术软件开发C#编程语言 C#中判断字符是否为中文

1  /  1  页   1 跳转 查看:2088

C#中判断字符是否为中文

C#中判断字符是否为中文

原文: http://blog.csdn.net/qcdn/archive/2008/01/25/2064632.aspx

在unicode 字符串中,中文的范围是在4E00..9FFF:CJK Unified Ideographs。
通过对字符的unicode编码进行判断来确定字符是否为中文。


protected
bool  IsChineseLetter(string input,int index)
{
       
int code =0;
     

        int chfrom = Convert.ToInt32("4e00", 16);    //范围(0x4e00~0x9fff)转换成int(chfrom~chend)
        int chend = Convert.ToInt32("9fff", 16);

       
if (input != ""){

            code
= Char.ConvertToUtf32(input, index);    //获得字符串input中指定索引index处字符unicode编码           

           
if (code >= chfrom && code <= chend) {

                 
return  true;    //当code在中文范围内返回true

            }else{
               

                  return  false ;    //当code不在中文范围内返回false
          }
        }

       
return false;
}


最后编辑enjoyo 最后编辑于 2008-01-29 10:05:43
 

[优化]C#中判断字符是否为中文

protected bool IsChineseLetter(string input, int index)
        {
            int code = 0;
            int chFrom = 19968;  //4E00
            int chEnd  = 40959;  //9FFF 
            if ((null != input) && ("" != input))
            {
               
                code = Char.ConvertToUtf32(input, index);    //获得字符串input中指定索引index处字符unicode编码           
                if (code >= chFrom && code <= chEnd)
                {
                    return true;    //当code在中文范围内返回true
                }
                else
                {
                    return false;    //当code不在中文范围内返回false
                }
            }
            return false;
        }
 
1  /  1  页   1 跳转

版权所有 Sinoprise Network Studio   Sitemap

Powered by Discuz!NT 2.0.1214    Copyright © 2001-2009 Comsenz Inc.
Processed in 0.046875 second(s) , 6 queries. 京ICP备05062328号
返顶部