Entwickler-Ecke
Dateizugriff - .gz Dateien entpacken
Jocke - Fr 29.04.05 16:27
Titel: .gz Dateien entpacken
Hallo,
ich habe gepackte Dateien mit der Endung .gz, die ich in Windows mit WinZip entpacken kann.
Nun versuche ich diese Dateien in einem Delphi Programm zu entpacken, aber sowohl mit ZipMaster als auch mit Abbrevia gibts Probleme, da diese wohl Probleme mit dem Format .gz haben. Die Fehlermeldung bei Zipmaster z.B. war
11036 DS_NoValidZip This archive is not a valid Zip archive
Kann mir mal jemand sagen, was .gz ist und ob es eine Komponente gibt, mit der ich das Archiv entpacken kann ?
Asgar - Fr 29.04.05 16:39
hab was zur endung .gz gefunden
http://www.gzip.org/ da is auch ein link zum dekompressions algorythmuss, vieleicht isses ja das richtige.
Grendel - Fr 29.04.05 16:47
Ja isses. gz ist gzip.
Bis neulich ...
Jocke - Mo 02.05.05 15:06
Danke für die Infos.
Allerdings komme ich hier nicht weiter.
Ich habe versucht, mich hier entsprechend zu informieren, allerdings bin ich jetzt total verwirrt.
Ich habe mal folgendes ausprobiert .
Delphi-Quelltext
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:
| procedure Decompress(InputFileName, OutputFileName: string); var InputStream, OutputStream : TFileStream; DeCompressionStream : TDeCompressionStream; a : ^byte; i : Integer; begin InputStream := TFileStream.Create(InputFileName, fmOpenRead); GetMem(a,655360); try OutputStream := TFileStream.Create(OutputFileName, fmCreate); try DecompressionStream := TDecompressionStream.Create(InputStream); try repeat i:=DecompressionStream.Read(a^,655360); if i>0 then OutputStream.Write(a^,i); until i<655360; FreeMem(a); finally DecompressionStream.Free; end; finally OutputStream.Free; end; finally InputStream.Free; end; end; |
Dies rufe ich auf mit
Decompress('C:\test.gz','C:\test.csv');
Hier bekomme ich aber eine Fehlermeldung
Was mache ich hier falsch ?
Ist das denn so schwierig, eine Datei zu entpacken ?
Moderiert von
raziel: Code- durch Delphi-Tags ersetzt.
tommie-lie - Mo 02.05.05 15:24
Jocke hat folgendes geschrieben: |
Hier bekomme ich aber eine Fehlermeldung
Was mache ich hier falsch ? |
Das kann ich dir sagen, du machst was ganz grundlegendes falsch: Du sagst nicht, welche Fehlermeldung wann kommt.
Jocke - Mo 02.05.05 15:41
Tut mir leid, hier die Meldung :
Project test.exe raised exception class ECompressionError with message 'error'.Process stopped.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!