//注:参数vtData在原来程序中没说明是什么类型,但在DELPHI中是OleVariant的
<script LANGUAGE="vbScript">'将BYTE流变成字符串
function ToString(vtData)  Dim flag
  dim str
   Dim flagstr
    
    For i = 1 To(UBound(vtData) + 1)
        flag = AscB(MidB(vtData, i, 1))
        If flag < 10 Then 
flagstr = "00" & Cstr(flag)
elseIf flag < 100 And flag > 9 Then
flagstr = "0" & Cstr(flag)
else
flagstr = Cstr(flag)
end if
        str = str & flagstr
    Next
    ToString = str
End function
</script>

解决方案 »

  1.   

    BinToHex 可以转换为16进制字符串,这里的只是10进制的而已。
      

  2.   

    看這樣行不行:function ToString(vtData: OleVariant): string;
    var
      I, flag: integer;
      str, flagstr, s: string;
    begin
      s := varToStr(vtData);
      for i := 1 to Length(s) do
      begin
        flag := ord(s[i]);
        if flag < 10 then
          flagstr := '00' + chr(flag)
        else if (flag < 100) and (flag > 9) then
          flagstr := '0' + chr(flag)
        else
          flagstr := chr(flag);    str := str + flagstr
      end;
      ToString := str;
    end;