去看一看ByteType这个函数。

解决方案 »

  1.   

    如果是汉字和字符都在同一个字符串中,我想该字符串的格式为UNICODE格式,如果是汉字为
    两个字节,该双字节的高字节的值是特殊的,如果遇到这样的情况,就读两个字节,指针移动两个字节,判断接下来的字节,如果为ASCAL吗值则读一个字符,表示一个字符,指针移动一个字节,我建议你看看有关UNICODE 编码的书,可能会解决吧
      

  2.   

    ss:string;
    s:widestring;
    ss:='s动力';
    s:=ss;
    //s[1]=s;s[2]=动
      

  3.   

    英文65-90 and 97-122中文161-2??(possibel 21? )
    s:='asdf犯得fd上法kfdja';
    eng:='';
    chi:='';
    i:=1;
    while i<=length(s) do
      begin
        if 65<=ord(s[i])<=90 and
           97<=ord(s[i])<=122 then
          eng:=eng+s[i]        
        if 161<=ord(s[i])<=21?) then
          begin
             chi:=chi+s[i];
             inc(i);
             chi:=chi+s[i];
          end;
        inc(i); 
      end;
      

  4.   


    天呐,合着我白说啦,去看看ByteType这个函数。