各位请问,如何返'王'的ASCII,及如何反过来求,由ASCII求汉字字符?

解决方案 »

  1.   

    汉字应该是占用两个字节,所以可能有前半部分和后半部分的问题。
    我这样实现 ASCII 码的获取。
    var
      s: String;
      c: char;
    begin
      s := '王';
      c := s[1];
      Edit1.Text := IntTostr(ord(c));
      c := s[2];
      Edit1.Text := Edit1.Text + ' ' + IntToStr(Ord(c));
    end;用这个方法来获得汉字:
    var
      s: string;
    begin
      s := '';
      s := Chr(205) + Chr(245);
      Edit1.Text := s;
    end;
      

  2.   

    WideCharToMultiByte()
      MultiByteToWideChar()
      

  3.   

    一些基本概念还是应该先搞清楚的,ASCII(American Standard Code for Information Interchange)翻译为中文就是"美国信息交换标准码",它只用来表示我们常用的字母、数字、符号等,和汉字编码所使用的是DBCS(Double Byte Char Systems)不是一回事,DBCS将ASCII中128-255的扩展字符做了其它定义!而上面naughtyboy提到WideChar,WideString是对Unicode字符集而言,和楼主的问题没有关系!
      

  4.   

    如:
    var
      Str : String;Str := '王';用
    Ord(Str[1]) shl 8 + Ord(Str[2])
    即可得到你要的结果
      

  5.   

    To ehom:
     谢谢了,是我搞错了,上面的两个函数一般用于ucs2!