| 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> |