ZipFileManipulator with target file extract ready
This commit is contained in:
parent
44cd64d362
commit
4747d5924f
|
|
@ -0,0 +1,39 @@
|
|||
import java.io.BufferedInputStream;
|
||||
import java.io.BufferedOutputStream;
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.nio.file.FileSystem;
|
||||
import java.nio.file.FileSystems;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.Enumeration;
|
||||
import java.util.zip.ZipEntry;
|
||||
import java.util.zip.ZipFile;
|
||||
|
||||
public class ZipFileManipulator {
|
||||
|
||||
private String fileName; // file which will be extracted from
|
||||
private String extractionPath; // temporary path where the file will be extracted to
|
||||
|
||||
public ZipFileManipulator(String fileName, String extractionPath) {
|
||||
this.fileName = fileName;
|
||||
this.extractionPath = extractionPath;
|
||||
}
|
||||
|
||||
public void extractFile(String targetFile) throws Exception {
|
||||
File outputLocation = new File(extractionPath, targetFile);
|
||||
|
||||
// path to the file the file will be extracted from
|
||||
Path zipFile = Paths.get(fileName);
|
||||
|
||||
// load zip file as filesystem
|
||||
FileSystem fileSystem = FileSystems.newFileSystem(zipFile, null);
|
||||
|
||||
Path source = fileSystem.getPath("ppt/" + targetFile); // location of targetFile inside the zip file
|
||||
|
||||
Files.copy(source, outputLocation.toPath());
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue