Stay with him xcallmejudasx, I'm busy right now. A .cab file in java is .... well, dot cab in cs in win proprietary for a compressed file. dot zip is somewhat not as winnie, we have dot war as Web Archive, ( Look into it xcallmejudasx - help him with it ) and as well we have what is called .gzip - the defacto standard for open-standards in file compression routines.
In Java, we use what is called .jar - which is acronm for Java Archive. Though using several compression algorithms, we have a short intro study just examining the various compression schemes used in the differing file format.
Start by google for LZW - both of you work on it awhile while I am busy on some preliminary concepting for a compiler.....
Additional information:
interfacing ActiveX and Java