Как извлечь прочитанный заархивированный файл? - PullRequest
0 голосов
/ 23 февраля 2010

Как я могу извлечь данные из архива с использованием библиотек JAVA? Есть ли библиотека, которая выполняет разархивирование, и я получаю файл и манипулирую им?

Ответы [ 3 ]

5 голосов
/ 23 февраля 2010

Вы можете использовать пакет "java.util.zip".

См. эту статью от Sun .

2 голосов
/ 23 февраля 2010

http://java.sun.com/j2se/1.4.2/docs/api/java/util/zip/package-summary.html http://www.roseindia.net/java/beginners/JavaUncompress.shtml

import java.util.zip;
import java.io.OutputStream;
import java.io.FileOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

public class JavaUncompress{
public static void main(String args[]){
try{
  //To Uncompress GZip File Contents we need to open the gzip file.....
  if(args.length<=0){
    System.out.println("Please enter the valid file name");
  }
  else{
    String inFilename = args[0];
    System.out.println("Opening the gzip file.......................... :  opened");


    ZipInputStream zipInputStream = null;
    FileInputStream fileInputStream = null;
    zipInputStream = new ZipInputStream(new 

FileInputStream(inFilename));
    System.out.println("Opening the output file............ : opened");
    String outFilename = inFilename +".pdf";
    OutputStream out = new FileOutputStream(outFilename);
    System.out.println("Transferring bytes from the 

compressed file to the output file........:
     Transfer successful");
    byte[] buf = new byte[1024];  //size can be 

//changed according to programmer's need.
    int len;
    while ((len = zipInputStream.read(buf)) > 0) {
      out.write(buf, 0, len);
    }
    System.out.println("The file and stream is ......closing.......... : closed"); 
    zipInputStream.close();
    out.close();
      }
    }
    catch(IOException e){
  System.out.println("Exception has been thrown" + e);
    }
  }
}
1 голос
/ 23 февраля 2010

Commons Compress http://commons.apache.org

...