Bonjour,
ça fait longtemp que je n'ai pas travaillé avec des pointers et impossible de m'en sortir. Je souhaite incrémenter mon pointer pour lire le tableau qui est renvoyé par la zLib
en fait. Mon problème c'est de compresser des données à la voler pour mettre tout ça dans un fichier compressé. Si ça se trouve il y a une méthode plus simple. Mais je n'ai rien trouvé, c'est toujours à partir d'un fichier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 var i : integer ; Char1 : char ; outStream,inpStream: TMemoryStream; SI : array[0..12] of char ; DI : pointer ; lenSo : integer ; begin SI[0] := 'a' ; SI[1] := 'z' ; SI[2] := 'e' ; SI[3] := 'r' ; SI[4] := 't' ; SI[5] := 'y' ; SI[6] := 'a' ; SI[7] := 'z' ; SI[8] := 'e' ; SI[9] := 'r' ; SI[10] := 't' ; SI[11] := 'y' ; SI[12] := '0' ; InpStream := TMemoryStream.Create; InpStream.Write(SI, 13); outStream := TMemoryStream.Create; BZCompressBuf( InpStream, 7, //$9AA020 DI, lenSO ); Caption := '' ; For i := 0 to lenSO do begin Char1 := Char((DI)^); Caption := Caption + Format('%x ', [Ord(Char1)]) ; end ; end ;
Merci d'avance
Partager