JS前台
<script language="javascript" type="text/javascript">
  //alert(len("1sS#符")) //英文、数字、符号均为一个字节,汉字为两个。 因此结果为 6
    function getLen()
    {
       var s="我们HELLO";
       var l = 0;
       var a = s.split("");
       for (var i=0;i<a.length;i++)
       {
         if (a[i].charCodeAt(0)<299)
         {
            l++;
         }
         else
         {
            l+=2; 
         }
       }
     ///l=9
    }
</script>

c# 后台

  public static int GetStrLen(string txt)
        {

            Char[] cc = txt.ToCharArray();
            int intLen = txt.Length;
       
            if("汉字".Length==4)
            {
                //是非中文 的 平台
                return intLen;
            }
            for(int i=0;i<cc.Length;i++)
            {
                if(Convert.ToInt32(cc[i])>255)
                {
                    intLen++;
                }
            }
            return intLen;

            //原理是中文的内码是大于255的,所以当我们判断一个字符是否是汉字,就判断他的内码
            //是否大于 255,如果是,我们就把这个字符的长度+1,
         }

posted on 2009-08-24 16:39  poop  阅读(588)  评论(0编辑  收藏  举报