MmoMsg.Lines.Add('成功!');  可以显示汉字或字符    但怎么能将数组里的字符按16进制显示出来呢?怎么写呢?

解决方案 »

  1.   


    function StringtoHex(Data: string): string;
    var
      i, i2: Integer;
      s: string;
    begin
      i2 := 1;
      for i := 1 to Length(Data) do
      begin
        Inc(i2);
        if i2 = 2 then
        begin
          s  := s + ' ';
          i2 := 1;
        end;
        s := s + IntToHex(Ord(Data[i]), 2);
      end;
      Result := s;
    end;procedure TForm1.Button1Click(Sender: TObject);
    var
      s:string;
    begin
      s:=mmoMsg.Text;
      MmoMsg.Clear;
      MmoMsg.Text:=StringtoHex(s);
    end;转换成Hex。
      

  2.   

    写个数组转换16进制的函数,然后就MmoMsg.Lines.Add(转换的结果);
      

  3.   

    谢谢2楼
    终于搞出来了,
    用IntToHex转换出来累加到字符串中再输出就OK了 ^_^
    for i:=0 to Len do
        AA := AA + IntToHex(CommBuff[i],2)+' ';
    MmoMsg.Lines.Add(AA);