OpenShot Audio Library | OpenShotAudio 0.3.2
|
#include <juce_ZipFile.h>
Classes | |
class | Builder |
struct | ZipEntry |
Public Member Functions | |
ZipFile (const File &file) | |
ZipFile (InputStream *inputStream, bool deleteStreamWhenDestroyed) | |
ZipFile (InputStream &inputStream) | |
ZipFile (InputSource *inputSource) | |
~ZipFile () | |
int | getNumEntries () const noexcept |
const ZipEntry * | getEntry (int index) const noexcept |
int | getIndexOfFileName (const String &fileName, bool ignoreCase=false) const noexcept |
const ZipEntry * | getEntry (const String &fileName, bool ignoreCase=false) const noexcept |
void | sortEntriesByFilename () |
InputStream * | createStreamForEntry (int index) |
InputStream * | createStreamForEntry (const ZipEntry &entry) |
Result | uncompressTo (const File &targetDirectory, bool shouldOverwriteFiles=true) |
Result | uncompressEntry (int index, const File &targetDirectory, bool shouldOverwriteFiles=true) |
Decodes a ZIP file from a stream.
This can enumerate the items in a ZIP file and can create suitable stream objects to read each one.
Definition at line 35 of file juce_ZipFile.h.
struct juce::ZipFile::ZipEntry |
Contains information about one of the entries in a ZipFile.
Definition at line 72 of file juce_ZipFile.h.
Class Members | ||
---|---|---|
uint32 | externalFileAttributes |
Platform specific data. Depending on how the zip file was created this may contain macOS and Linux file types, permissions and setuid/setgid/sticky bits. |
String | filename |
The name of the file, which may also include a partial pathname. |
Time | fileTime |
The last time the file was modified. |
bool | isSymbolicLink |
True if the zip entry is a symbolic link. |
int64 | uncompressedSize |
The file's original size. |
Creates a ZipFile to read a specific file.
Definition at line 241 of file juce_ZipFile.cpp.
juce::ZipFile::ZipFile | ( | InputStream * | inputStream, |
bool | deleteStreamWhenDestroyed | ||
) |
Creates a ZipFile for a given stream.
inputStream | the stream to read from |
deleteStreamWhenDestroyed | if set to true, the object passed-in will be deleted when this ZipFile object is deleted |
Definition at line 227 of file juce_ZipFile.cpp.
|
explicit |
Creates a ZipFile for a given stream. The stream will not be owned or deleted by this class - if you want the ZipFile to manage the stream's lifetime, use the other constructor.
Definition at line 236 of file juce_ZipFile.cpp.
|
explicit |
Creates a ZipFile for an input source.
The inputSource object will be owned by the zip file, which will delete it later when not needed.
Definition at line 246 of file juce_ZipFile.cpp.
juce::ZipFile::~ZipFile | ( | ) |
Destructor.
Definition at line 251 of file juce_ZipFile.cpp.
InputStream * juce::ZipFile::createStreamForEntry | ( | const ZipEntry & | entry | ) |
Creates a stream that can read from one of the zip file's entries.
The stream that is returned must be deleted by the caller (and a nullptr might be returned if a stream can't be opened for some reason).
The stream must not be used after the ZipFile object that created has been deleted.
Note that if the ZipFile was created with a user-supplied InputStream object, then all the streams which are created by this method will by trying to share the same source stream, so cannot be safely used on multiple threads! (But if you create the ZipFile from a File or InputSource, then it is safe to do this).
Definition at line 323 of file juce_ZipFile.cpp.
InputStream * juce::ZipFile::createStreamForEntry | ( | int | index | ) |
Creates a stream that can read from one of the zip file's entries.
The stream that is returned must be deleted by the caller (and a nullptr might be returned if a stream can't be opened for some reason).
The stream must not be used after the ZipFile object that created has been deleted.
Note that if the ZipFile was created with a user-supplied InputStream object, then all the streams which are created by this method will by trying to share the same source stream, so cannot be safely used on multiple threads! (But if you create the ZipFile from a File or InputSource, then it is safe to do this).
Definition at line 301 of file juce_ZipFile.cpp.
Referenced by createStreamForEntry(), and uncompressEntry().
|
noexcept |
Returns a structure that describes one of the entries in the zip file.
This uses a case-sensitive comparison to look for a filename in the list of entries. It might return 0 if no match is found.
Definition at line 296 of file juce_ZipFile.cpp.
|
noexcept |
Returns a structure that describes one of the entries in the zip file. This may return a nullptr if the index is out of range.
Definition at line 274 of file juce_ZipFile.cpp.
|
noexcept |
Returns the index of the first entry with a given filename. This uses a case-sensitive comparison to look for a filename in the list of entries. It might return -1 if no match is found.
Definition at line 282 of file juce_ZipFile.cpp.
|
noexcept |
Returns the number of items in the zip file.
Definition at line 269 of file juce_ZipFile.cpp.
void juce::ZipFile::sortEntriesByFilename | ( | ) |
Sorts the list of entries, based on the filename.
Definition at line 332 of file juce_ZipFile.cpp.
Result juce::ZipFile::uncompressEntry | ( | int | index, |
const File & | targetDirectory, | ||
bool | shouldOverwriteFiles = true |
||
) |
Uncompresses one of the entries from the zip file.
This will expand the entry and write it in a target directory. The entry's path is used to determine which subfolder of the target should contain the new file.
index | the index of the entry to uncompress - this must be a valid index between 0 and (getNumEntries() - 1). |
targetDirectory | the root folder to uncompress into |
shouldOverwriteFiles | whether to overwrite existing files with similarly-named ones |
Definition at line 402 of file juce_ZipFile.cpp.
Referenced by uncompressTo().
Result juce::ZipFile::uncompressTo | ( | const File & | targetDirectory, |
bool | shouldOverwriteFiles = true |
||
) |
Uncompresses all of the files in the zip file.
This will expand all the entries into a target directory. The relative paths of the entries are used.
targetDirectory | the root folder to uncompress to |
shouldOverwriteFiles | whether to overwrite existing files with similarly-named ones |
Definition at line 388 of file juce_ZipFile.cpp.