如题,如何把00 16 00 23 00 00 00 0E 00 02 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 03 00 03 00 03 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 01 90 00 32 01 FF 1F 35 0B D1 47 A7 73 8D 89 55 EC 8C F7 CC 6B FD 4F EF 89 C9 EF EB 3E D6 93 67 8D 72 EF 75 8B CC 55 92 3E 9C BF 6D 0E F7 F8 65 F6 9B 9B 6E BB B7 F8 D2 F6 8E F4 92 B3 DF 0F E5 D5 F7 EE 5C B8 FE FD CF 1F BF FD A7 95 4C 1D B4 C5 BC BB 05 5B 6A 2D AF 58 FA 6D C0 B8 65 DB 9F 53 2E E1 9A 7F DD ED 9F 9A A5 6E B9 DC FF E2 5E F4 B1 A8 0D 39 6E 6F E9 EF 8A 6F F9 7A 84 B8 87 32 AF EE D1 30 EF 8E 66 90 04 9D 63 7D AD 09 AF 00 00 00 00 00 00 00 00 00 AF CA 03 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 01 00 00 00 00 03 00 20 94 00 48 0D 90 67 00 31 23 23 23 23 23 23 23 23 23 23这些数存放在数组ByteArray[]中从而得到像下面这样的
               ByteArray[0]:=$00;
             ByteArray[1]:=$16;
             ByteArray[2]:=$00;
                     .
                     .
就像这样的,是否要将上面的数据格式转换,如果要转换,该如何转换呢?谢谢!

解决方案 »

  1.   

    var
    st:TStringList;
    bytearr:array of Byte;
    i:Integer;
    begin
    st:=TStringList.Create;
    st.Delimiter:=' ';
    st.DelimitedText:='00 16 00 23 00 00 00 0E 00 02 00 02 00 00 00 00 00 00 00 00 00 '+
    '00 00 00 00 00 00 00 00 00 00 00 00 03 00 03 00 03 00 03 00 00 00 00 00 00 00 00 00'+
    ' 00 00 00 00 00 00 00 00 01 01 90 00 32 01 FF 1F 35 0B D1 47 A7 73 8D 89 55 EC 8C F7 '+
    'CC 6B FD 4F EF 89 C9 EF EB 3E D6 93 67 8D 72 EF 75 8B CC 55 92 3E 9C BF 6D 0E F7 F8 65 '+
    'F6 9B 9B 6E BB B7 F8 D2 F6 8E F4 92 B3 DF 0F E5 D5 F7 EE 5C B8 FE FD CF 1F BF FD A7 95 4C'+
    ' 1D B4 C5 BC BB 05 5B 6A 2D AF 58 FA 6D C0 B8 65 DB 9F 53 2E E1 9A 7F DD ED 9F 9A A5 6E B9 '+
    'DC FF E2 5E F4 B1 A8 0D 39 6E 6F E9 EF 8A 6F F9 7A 84 B8 87 32 AF EE D1 30 EF 8E 66 90 04 9D '+
    '63 7D AD 09 AF 00 00 00 00 00 00 00 00 00 AF CA 03 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 01 00 00 00 00 03 00 20 94 00 48 0D 90 67 00 31 23 23 23 23 23 23 23 23 23 23';
    SetLength(bytearr,st.Count);
    for i:=0 to st.Count-1 do
    bytearr[i]:=StrToInt('$'+st[i]);
      

  2.   


    procedure TForm1.Button1Click(Sender: TObject);
    const
      AData: array[0..271] of byte =
        ($00, $16, $00, $23, $00, $00, $00, $0E, $00, $02, $00, $02, $00,
         $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00,
         $00, $00, $00, $00, $00, $00, $00, $03, $00, $03, $00, $03, $00,
         $03, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00,
         $00, $00, $00, $00, $00, $01, $01, $90, $00, $32, $01, $FF, $1F,
         $35, $0B, $D1, $47, $A7, $73, $8D, $89, $55, $EC, $8C, $F7, $CC,
         $6B, $FD, $4F, $EF, $89, $C9, $EF, $EB, $3E, $D6, $93, $67, $8D,
         $72, $EF, $75, $8B, $CC, $55, $92, $3E, $9C, $BF, $6D, $0E, $F7,
         $F8, $65, $F6, $9B, $9B, $6E, $BB, $B7, $F8, $D2, $F6, $8E, $F4,
         $92, $B3, $DF, $0F, $E5, $D5, $F7, $EE, $5C, $B8, $FE, $FD, $CF,
         $1F, $BF, $FD, $A7, $95, $4C, $1D, $B4, $C5, $BC, $BB, $05, $5B,
         $6A, $2D, $AF, $58, $FA, $6D, $C0, $B8, $65, $DB, $9F, $53, $2E,
         $E1, $9A, $7F, $DD, $ED, $9F, $9A, $A5, $6E, $B9, $DC, $FF, $E2,
         $5E, $F4, $B1, $A8, $0D, $39, $6E, $6F, $E9, $EF, $8A, $6F, $F9,
         $7A, $84, $B8, $87, $32, $AF, $EE, $D1, $30, $EF, $8E, $66, $90,
         $04, $9D, $63, $7D, $AD, $09, $AF, $00, $00, $00, $00, $00, $00,
         $00, $00, $00, $AF, $CA, $03, $01, $00, $00, $00, $00, $00, $00,
         $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00,
         $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $02, $00, $01,
         $00, $00, $00, $00, $03, $00, $20, $94, $00, $48, $0D, $90, $67,
         $00, $31, $23, $23, $23, $23, $23, $23, $23, $23, $23, $23);
    begin
      ShowMessage(IntToHex(AData[0], 2));
    end;