Как я могу извлечь данные из архива с использованием библиотек JAVA? Есть ли библиотека, которая выполняет разархивирование, и я получаю файл и манипулирую им?
Вы можете использовать пакет "java.util.zip".
См. эту статью от Sun .
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); } } }
Commons Compress http://commons.apache.org