I am observing issues when trying to unzip files from C#. These files were created with the built-in zip feature of Windows Explorer (in Windows 8.1 x64).
The issues are based on the fact that sometimes, Windows Explorer uses the Deflate64
compression method for its zip files, rather than the Deflate
method (where only the latter is supported by .NET's built-in classes).
This question is not about the programming issues, but about the behaviour of Windows Explorer.
How does Windows Explorer decide whether to use Deflate
or Deflate64
?
Is it related to uncompressed file size? I tried various combinations, and at least found a bunch of files amounting to roughly 1GB getting zipped with Deflate
, and another bunch of files amounting to over 2GB getting zipped with Deflate64
. Or does anything else (number of files, maybe even something less obvious such as compression levels) play into it?
Is this behaviour even consistent across "current" Windows versions?
Deflate
until the uncompressed file size is approximately 2GB (2 * 1024^3), after which point it switches toDeflate64
.