[1049] | 1 | /**
|
---|
| 2 | * \page faq QuaZip FAQ
|
---|
| 3 | *
|
---|
| 4 | * <!--
|
---|
| 5 | *
|
---|
| 6 | * \ref faq-non-QIODevice "Q. Is there any way to use QuaZipFile in Qt where you are supposed to use normal (non-zipped) file, but not through QIODevice API?"
|
---|
| 7 | * \ref faq-zip64 "Q. Can QuaZIP handle files larger than 4GB? What about zip64 standard?"
|
---|
| 8 | *
|
---|
| 9 | * \ref faq-seekable "Q. Can QuaZIP write archives to a sequential QIODevice like QTcpSocket?"
|
---|
| 10 | *
|
---|
| 11 | * -->
|
---|
| 12 | *
|
---|
| 13 | * \anchor faq-non-QIODevice Q. Is there any way to use QuaZipFile in Qt
|
---|
| 14 | * where you are supposed to use normal (non-zipped) file, but not
|
---|
| 15 | * through QIODevice API?
|
---|
| 16 | *
|
---|
| 17 | * A. Usually not. For example, if you are passing file name to some
|
---|
| 18 | * database driver (like SQLite), Qt usually just passes this name down
|
---|
| 19 | * to the 3rd-party library, which is usually does not know anything
|
---|
| 20 | * about QIODevice and therefore there is no way to pass QuaZipFile as
|
---|
| 21 | * normal file. However, if we are talking about some place where you
|
---|
| 22 | * pass file name, and then indirectly use QFile to open it, then it is
|
---|
| 23 | * a good idea to make overloaded method, which accepts a QIODevice
|
---|
| 24 | * pointer. Then you would be able to pass QuaZipFile as well as many
|
---|
| 25 | * other nice things such as QBuffer or QProcess.
|
---|
| 26 | *
|
---|
| 27 | * \anchor faq-zip64 Q. Can QuaZIP handle files larger than 4GB? What
|
---|
| 28 | * about zip64 standard?
|
---|
| 29 | *
|
---|
| 30 | * A. Starting with version 0.6, QuaZIP uses Minizip 1.1 with zip64
|
---|
| 31 | * support which should handle large files perfectly. The zip64 support
|
---|
| 32 | * in Minizip looks like it's not 100% conforming to the standard, but
|
---|
| 33 | * 3rd party tools seem to have no problem with the resulting archives.
|
---|
| 34 | *
|
---|
| 35 | * \anchor faq-seekable Q. Can QuaZIP write archives to a sequential QIODevice like QTcpSocket?
|
---|
| 36 | *
|
---|
| 37 | * A. Not yet. It is not supported by vanilla Minizip (the back-end
|
---|
| 38 | * QuaZIP uses), although theoretically possible according to the ZIP
|
---|
| 39 | * standard. It would require some Minizip modifications that would
|
---|
| 40 | * allow it to detect non-seekable I/O and produce necessary output
|
---|
| 41 | * structures. QuaZIP already writes data descriptor which is necessary
|
---|
| 42 | * for non-seekable I/O. The only thing that is apparently left is to
|
---|
| 43 | * make Minizip fill local headers with correct values and forget about
|
---|
| 44 | * seeking after closing the file.
|
---|
| 45 | **/
|
---|