java - Extract files from *.gz extension -


i have extracted *.gz *.tgz , have no idea how extract final files *.tgz.

there options using custom packages that's not option me, i need use standard java packages only.

what tried using same function use *.tgz *.gz doesn't work.

java.util.zip.zipexception: not in gzip format 1.gz

here function extracting *.tgz files.

public string extractfile(string path) {     try {         file newfile = new file(this.getfullpathwithoutextension(path) + ".gz");          gzipinputstream gstream;         fileoutputstream outstream;         try (fileinputstream filestream = new fileinputstream(path)) {             gstream = new gzipinputstream(filestream);             outstream = new fileoutputstream(newfile);             byte[] buf = new byte[1024];             int len;             while ((len = gstream.read(buf)) > 0) {                 outstream.write(buf, 0, len);             }         }         gstream.close();         outstream.close();          newfile.createnewfile();          return newfile.getpath();      } catch (exception e) {         system.out.print(e);     }      return null; } 

tl;dr; *.tgz files extracted *.gz files, *.gz files cannot extracted.

a .tgz file wouldn't extracted .gz file - extracted .tar file. (a .gz file gzipped; .tar file uncompressed archive containing multiple files; .tgz .tar file that's been gzipped - you've "undone" gzipping.)

i don't think there's within java's standard libraries handle tar files - you'll either have revisit "i can't use not in standard library" decision or reimplement yourself. file format available if decide that.


Comments

Popular posts from this blog

javascript - AngularJS custom datepicker directive -

javascript - jQuery date picker - Disable dates after the selection from the first date picker -