image thumbnail

ZipFile

version 1.04 (33.8 KB) by Collin Pecora
Extract individual zip archive entries from zip files from MATLAB

136 Downloads

Updated 13 Feb 2021

From GitHub

View license on GitHub

ZipFile is a MATLAB object that allows for extracting individual archive entries from zip files.

To create a ZipFile object;

zf = io.ZipFile('myfile.zip');

To open the user interface, call the constructor with no parameters

zf = io.ZipFile()

To extract specific entries;

zf.extract(whichEntry,whichDirectory);

Where whichEntry is the numeric index(s) or name of the entry to be extracted, for example;

zf.extract(':.ptx')

Will extract all entries that end with the extension '.ptx'. See the function getEntry.m in the @ZipFile folder for more whichEntry syntax. If the whichDirectory input is not supplied, the files will be extracted in the current directory.

ZipFile also provides the means to read zip entries and create variables directly in MATLAB without extracting the entry to disk. For example;

lr = zf.getLineReaderFor(10);

Creates a LineReader object for the 10th entry. LineReader objects read text files by lines, you would then write code to parse the lines into a MATLAB variable or object. Two other reader objects are provided, a DataReader for binary files and a TokenReader.

ZipFile can also read some image files directly to a MATLAB image matrix;

I = zf.readImage(whichEntry);

icons = zf.getAllImagesAsIcons();

Will read all images in the zip file and return a java array of ImageIcons.

If you just want to see the contents of a zip file, use the function zipdir.

listings = zipdir('myfile.zip');

Where listings is a structure array, similar to that returned by dir. If you do not supply an input to zipdir, a file selection dialog will be shown.

Cite As

Collin Pecora (2021). ZipFile (https://github.com/RocketWrench/ZipFile/releases/tag/1.04), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2018a
Compatible with R2016b and later releases
Platform Compatibility
Windows macOS Linux
Tags Add Tags
zip

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.