用javascript
sss.substring(0,22)

解决方案 »

  1.   

    出现乱码的可能是在第22个字符正好是一个中文的中间,(一个中文字符是2个字节不用说了吧)解决的办法可以先将整个字符串进行一次“扫描”,用JS依次判断每个字符的ASCII的值,这样可以知道第22位上是什么字符,如果是中文的话就从21或者23截断
      

  2.   

    那怎么知道22上的是什么字符啊!
    怎么用ASCII来判别啊!
    多谢了!
      

  3.   

    用JS可以得到一个字符对应的ASCII值啊~~这里有一个检测一个字符串是否为字母数字组合的JS函数:function checkchar(str)
    {
    var temp=str.length;
    for (i=0;i<temp;i++)
    {
    if ((str.charCodeAt(i)>57) && (str.charCodeAt(i)<65))
    {
    return false;
    }
    if ((str.charCodeAt(i)>90)&&(str.charCodeAt(i)<97))
    {
    return false;
    }
    if (str.charCodeAt(i)<48)
    {
    return false;
    }
    if ((str.charCodeAt(i)>122))
    {
    return false;
    }
    }
    return true;
    }当然你可以类似的做你想要的checkchar()~~^_^
      

  4.   

    try look
    http://www.csdn.net/expert/topic/212/212481.shtm