1 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
---|
2 | <html xmlns="http://www.w3.org/1999/xhtml">
|
---|
3 | <head>
|
---|
4 | <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
---|
5 | <title>QuaZIP: QuaZip FAQ</title>
|
---|
6 | <link href="tabs.css" rel="stylesheet" type="text/css"/>
|
---|
7 | <link href="doxygen.css" rel="stylesheet" type="text/css"/>
|
---|
8 | </head>
|
---|
9 | <body>
|
---|
10 | <!-- Generated by Doxygen 1.7.4 -->
|
---|
11 | <div id="top">
|
---|
12 | <div id="titlearea">
|
---|
13 | <table cellspacing="0" cellpadding="0">
|
---|
14 | <tbody>
|
---|
15 | <tr style="height: 56px;">
|
---|
16 | <td style="padding-left: 0.5em;">
|
---|
17 | <div id="projectname">QuaZIP <span id="projectnumber">quazip-0-7-2</span></div>
|
---|
18 | </td>
|
---|
19 | </tr>
|
---|
20 | </tbody>
|
---|
21 | </table>
|
---|
22 | </div>
|
---|
23 | <div id="navrow1" class="tabs">
|
---|
24 | <ul class="tablist">
|
---|
25 | <li><a href="index.html"><span>Main Page</span></a></li>
|
---|
26 | <li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
|
---|
27 | <li><a href="annotated.html"><span>Classes</span></a></li>
|
---|
28 | <li><a href="files.html"><span>Files</span></a></li>
|
---|
29 | <li><a href="dirs.html"><span>Directories</span></a></li>
|
---|
30 | </ul>
|
---|
31 | </div>
|
---|
32 | </div>
|
---|
33 | <div class="header">
|
---|
34 | <div class="headertitle">
|
---|
35 | <div class="title"><a class="el" href="classQuaZip.html" title="ZIP archive.">QuaZip</a> FAQ </div> </div>
|
---|
36 | </div>
|
---|
37 | <div class="contents">
|
---|
38 | <div class="textblock"><p><a class="anchor" id="faq-non-QIODevice"></a> Q. Is there any way to use <a class="el" href="classQuaZipFile.html" title="A file inside ZIP archive.">QuaZipFile</a> in <a class="elRef" doxygen="qtcore.tags:http://doc.qt.io/qt-5//" href="http://doc.qt.io/qt-5/qt.html">Qt</a> where you are supposed to use normal (non-zipped) file, but not through <a class="elRef" doxygen="qtcore.tags:http://doc.qt.io/qt-5//" href="http://doc.qt.io/qt-5/qiodevice.html">QIODevice</a> API?</p>
|
---|
39 | <p>A. Usually not. For example, if you are passing file name to some database driver (like SQLite), <a class="elRef" doxygen="qtcore.tags:http://doc.qt.io/qt-5//" href="http://doc.qt.io/qt-5/qt.html">Qt</a> usually just passes this name down to the 3rd-party library, which is usually does not know anything about <a class="elRef" doxygen="qtcore.tags:http://doc.qt.io/qt-5//" href="http://doc.qt.io/qt-5/qiodevice.html">QIODevice</a> and therefore there is no way to pass <a class="el" href="classQuaZipFile.html" title="A file inside ZIP archive.">QuaZipFile</a> as normal file. However, if we are talking about some place where you pass file name, and then indirectly use <a class="elRef" doxygen="qtcore.tags:http://doc.qt.io/qt-5//" href="http://doc.qt.io/qt-5/qfile.html">QFile</a> to open it, then it is a good idea to make overloaded method, which accepts a <a class="elRef" doxygen="qtcore.tags:http://doc.qt.io/qt-5//" href="http://doc.qt.io/qt-5/qiodevice.html">QIODevice</a> pointer. Then you would be able to pass <a class="el" href="classQuaZipFile.html" title="A file inside ZIP archive.">QuaZipFile</a> as well as many other nice things such as <a class="elRef" doxygen="qtcore.tags:http://doc.qt.io/qt-5//" href="http://doc.qt.io/qt-5/qbuffer.html">QBuffer</a> or <a class="elRef" doxygen="qtcore.tags:http://doc.qt.io/qt-5//" href="http://doc.qt.io/qt-5/qprocess.html">QProcess</a>.</p>
|
---|
40 | <p><a class="anchor" id="faq-zip64"></a> Q. Can QuaZIP handle files larger than 4GB? What about zip64 standard?</p>
|
---|
41 | <p>A. Starting with version 0.6, QuaZIP uses Minizip 1.1 with zip64 support which should handle large files perfectly. The zip64 support in Minizip looks like it's not 100% conforming to the standard, but 3rd party tools seem to have no problem with the resulting archives.</p>
|
---|
42 | <p><a class="anchor" id="faq-seekable"></a> Q. Can QuaZIP write archives to a sequential <a class="elRef" doxygen="qtcore.tags:http://doc.qt.io/qt-5//" href="http://doc.qt.io/qt-5/qiodevice.html">QIODevice</a> like QTcpSocket?</p>
|
---|
43 | <p>A. Not yet. It is not supported by vanilla Minizip (the back-end QuaZIP uses), although theoretically possible according to the ZIP standard. It would require some Minizip modifications that would allow it to detect non-seekable I/O and produce necessary output structures. QuaZIP already writes data descriptor which is necessary for non-seekable I/O. The only thing that is apparently left is to make Minizip fill local headers with correct values and forget about seeking after closing the file. </p>
|
---|
44 | </div></div>
|
---|
45 | <hr class="footer"/><address class="footer"><small>Generated on Sun Apr 3 2016 08:26:24 for QuaZIP by 
|
---|
46 | <a href="http://www.doxygen.org/index.html">
|
---|
47 | <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
|
---|
48 | </body>
|
---|
49 | </html>
|
---|