Konvertera GZIP till Deflate

Att konvertera en GZIP-ström till rå DEFLATE tar bort den yttre filomslutningen och huvudmetadatan, vilket enbart lämnar den komprimerade nyttolasten för specialiserade nätverksprotokoll och lågnivåarkiv.

Välj eller släpp filer här

Privat - filer lämnar aldrig din enhet

eller klistra in Ctrl+V

Medan du väntar på dina filer kan du spela Code Rain

Integritetsgaranti utan nätverksöverföring: 0 byte laddades upp till externa servrar. All bearbetning skedde lokalt i webbläsarens sandlåda.

Formatjämförelse och tekniska specifikationer

SpecifikationGZIPDEFLATE
MIME-typapplication/gzipapplication/zlib
TypDEFLATE-strömbehållarerå DEFLATE-ström
KomprimeringDEFLATE (RFC 1951)LZ77 + Huffman-kodning
StandardspecifikationIETF RFC 1952IETF RFC 1950 / RFC 1951
Magic Bytes-huvud1F 8B (gzip ID1/ID2)78 01 / 78 9C / 78 DA (zlib header bytes)

Formatöversikt och användningsområden

Att konvertera en GZIP-ström till rå DEFLATE förekommer frekvent inom webbutveckling, nätverksprogrammering och arbetsflöden för lågnivålagring av data. Utvecklare hanterar ofta GZIP när enstaka filer sparas på disk eftersom formatet inkluderar hjälpsam metadata som ursprungliga filnamn och ändringstidsstämplar. Moderna HTTP-komprimeringsprotokoll och specifika binära format förväntar sig dock enbart den komprimerade nyttolasten utan omslagsbyte. Genom att utföra denna konvertering kan ingenjörer mata standardkomprimerad data direkt till nätverksströmmar eller anpassade tolkar. Att bygga en anpassad HTTP-svarshanterare eller arbeta med ZIP-arkiv kräver till exempel ofta att GZIP-huvudet och CRC32-sidfoten tas bort för att isolera den råa algoritmutdata. Genom att ta bort denna extra behållardata minskas overhead när varenda byte räknas i begränsade programmeringsmiljöer.

Tekniska specifikationer och kodeköversikt

En GZIP-ström som identifieras med MIME-typen application/gzip använder en behållarstruktur som definieras i RFC 1952. Den börjar med en tvåbytes signatur (0x1F, 0x8B), följd av komprimeringsflaggor, ändringstid, operativsystem-ID och ett valfritt filnamn. Den komprimerade datan ligger i mitten och filen slutar med en fyrabytes CRC32-kontrollsumma och en fyrabytesindikator för okomprimerad storlek. Rå DEFLATE är däremot en bitström enligt RFC 1951 utan fast signatur, inramningshuvud eller sidfot. MIME-typen application/zlib beskriver ett zlib-hölje enligt RFC 1950 runt DEFLATE, inte en rå DEFLATE-ström. Konvertering från GZIP till rå DEFLATE tar bort GZIP-metadata och kontrollsumma men bevarar den komprimerade nyttolasten.

OS- och webbläsarkompatibilitet

Råa DEFLATE-strömmar körs inbyggt över moderna operativsystem och webbkörningsmiljöer via vanliga programmeringsspråk som Python, Node.js och C++. Webbläsare hanterar DEFLATE inbyggt via HTTP:s content-encoding-huvudstapel. Operativsystem som Windows, macOS och Linux stöder råa strömmar genom systemkomprimeringsbibliotek som zlib. Mobila plattformar inklusive Android och iOS tillhandahåller direkt API-åtkomst till DEFLATE-rutiner för anpassade lagringslager i appar.

Användbar information

Verifiera alltid att din måltolk förväntar sig en ren RFC 1951-ström snarare än en zlib-omsluten ström, eftersom zlib lägger till ett tvåbyteshuvud som råa DEFLATE-tolkar kommer att avvisa.

Vanliga frågor

Hur konverterar man GZIP-ström till rå DEFLATE utan att förlora kvalitet?

Båda formaten använder identiska förlustfria komprimeringsalgoritmer. Att konvertera dem innebär helt enkelt att läsa GZIP-behållaren, ta bort tiobyteshuvudet och åtta byte stort slutblock och spara de inre komprimerade blocken. Ingen data går förlorad eftersom den underliggande algoritmen förblir oförändrad.

Vad är skillnaden mellan en GZIP-ström och rå DEFLATE?

GZIP är en komplett filbehållare som inkluderar ett huvud med magiska byte, ursprungliga filnamn, ändringstidsstämplar och en sidfot med kontrollsumma. Rå DEFLATE är enbart den komprimerade datan i sig, som inte innehåller några huvuden, sidfötter eller filmetadata.