© 1999-2003, Flemming Koch Jensen
Alle rettigheder forbeholdt
Komprimering
revideret: 22. juli 99

"..."

- ...

 

Abstract:

x

Forudsætninger:

Et godt kendskab til filer i java. Et rimeligt kendskab til exceptions.

 

 

Understøtter tre formater Det er ikke formålet her at berøre behovet for komprimering og teorien bag. Det vi i stedet vil fokusere på, er hvorledes man kan lave komprimerede filer i java. Java understøtter direkte tre komprimerings-formater.
ZIP Det første format er det velkendte ZIP-format, der i en længere årrække er blevet brugt til at komprimere filer. Java understøtter kun ZIP-formatet mht. almindelige data-filer, ikke som nogen integreret del af java.
GZIP (GnuZIP) Det andet er GZIP-formatet (Gnu-ZIP), der ligner ZIP en hel del.
JAR (Java ARchive) Det tredie er java's eget JAR (Java ARchive), der ligeledes har en vis lighed med ZIP. Det understøttes ikke alene mht. komprimering af datafiler, men også i forbindelse med packages. Det betyder at man kan komprimere en package man selv har lavet i en JAR-file, og bruge den direkte. Man placerer blot den komprimerede file med class-filerne et sted på class-path, og så er den pågældende package til rådighed. Systemet søger selv for at tilgå de komprimerede class-filer uden at man selv skal bekymre sig om at pakke dem ud, de bliver automatisk udpakket og loaded når klasserne ellers loades.
CRC32

De tre formater er "placeret" i to packages: java.util.zip (ZIP og GZIP) og java.util.jar (JAR). Begge pakker byder på specielle Input-/OutputStreams der understøtter formaterne. java.util.zip har desuden en bekvem understøttelse af CRC32, der også kan anvendes i andre sammenhænge.

 

1. JAR

 

2. ZIP

x
x
Figur 3:
figur