Glabājot vai pārsūtot failus, dati vai faili ir jāsaspiež, lai ietaupītu vietu un trafiku. Šeit mēs runājam par datu saspiešanu, izmantojot C#.
GZipStream saspiešana Microsoft nodrošina straumju saspiešanas un atspiešanas metodes.
Šī klase apzīmē GZip datu formātu, kas izmanto nozares standarta algoritmus failu saspiešanai un dekompresijai bez zudumiem. Šis formāts ietver ciklisku dublēšanas kontrolpunktu, kas nosaka datu bojājumus. GZip datu formātā tiek izmantots tāds pats algoritms kā DeflateStream klasē, taču to var paplašināt, lai izmantotu citus saspiešanas formātus. Šo formātu var viegli ieviest tādā veidā, kas neietver patenta lietošanas tiesības.
Saspiestus GZipStream objektus, kas rakstīti failos ar paplašinājumu .gz, var atspiest, izmantojot vairākus parastus saspiešanas rīkus; Tomēr tie nenodrošina funkcionalitāti failu pievienošanai vai failu izvilkšanai no .zip.zip arhīviem.
Saspiešanas līdzeklis DeflateStream un GZipStream tiek parādīts kā straume. Tā kā dati tiek lasīti pa baitiem, nav iespējams noteikt labāko veidu, kā saspiest visu failu vai lielu datu bloku, veicot vairākas kārtas. Nesaspiestiem datu avotiem vislabāk ir izmantot klases DeflateStream un GZipStream. Ja avota dati ir saspiesti, jūs faktiski varat palielināt straumes lielumu, izmantojot šīs klases. Kods ir šāds:
|