Ok, I'll see what I can do. The 7zFormat.txt in http://downloads.sourceforge.net/sevenzip/7z920.tar.bz2 seems newer / more accurate.
Damjan On Thu, Jun 6, 2013 at 1:53 PM, Leos Literak <[email protected]> wrote: > HI Damjan, > > that would be awesome! I just need anything that 7z can uncompress. I do not > care of passwords or selection of compression algorithm. I am OK with > RandomAccessFile. > > Ad "spec" - I downloaded lzma922.tar.bz2 - I consider it as latest. Or do you > have newer file format description? > > Leoš > > ______________________________________________________________ >> Od: "Damjan Jovanovic" <[email protected]> >> Komu: Commons Users List <[email protected]> >> Datum: 06.06.2013 13:41 >> Předmět: Re: [compress] create 7zip archive >> > Hi > > I wrote the read support. Writing is tricky for several reasons: > * We need lzma for archive header compression (good to hear XZ has it > now Stefan!). It's optional but beneficial. > * No [compress] API exists for setting the password to use when writing. > * 7z supports "solid compression" in several variants: disabled, one > solid block per all files with the same extension, multiple solid > blocks of X megabytes in size, one solid block for all files, etc. > This gets complex to implement, and we need some way to configure > these. > * Writing cannot be implemented using (Archive)OutputStream and less > than O(n) memory, as fields written earlier in the file are only known > at the end of the compression process. So once again we need > RandomAccessFile. > > But I'll see if I can hack together a simple unencrypted > no-solid-compression writer that we can gradually improve. > > Yes, the 7zip GUI is generally a Windows-only tool (although it works > well in Wine), and even the 7z file format is very Windows-specific > (NTFS timestamps, Windows attributes, little-endian values, etc.). > 7zFormat.txt has mistakes (though the one in the 7z920 package is > better than the one in the lzma920 package) and even the reference > implementation differs from it, which is why I had to port from C/C++ > and give credit in NOTICE. > > Damjan > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
