GZIP 아카이브와 협력합니다

개요

Java API 용 zip을 사용하면 다른 제 3 자 애플리케이션없이 응용 프로그램에서 GZIP 아카이브를 작성하고 관리하는 작업을 수행 할 수 있습니다. aspose.zip api는 gziparchive 클래스를 제공하여 GZIP 아카이브와 함께 작동합니다. 이 클래스는 아카이브에서 작업을 수행하는 다양한 방법을 제공합니다.

GZIP 압축 알고리즘은 LZ77과 Huffman 코딩의 조합 인 Deflate 알고리즘을 기반으로합니다.

파일 압축

다음 코드 예제는 gziparchive 인스턴스를 사용하여 파일을 압축하는 방법을 보여줍니다.

1try (gziparchive archive = new gziparchive ()) {
2    archive.setsource (datadir + "data.bin");
3    archive.save (datadir + "archive.gz");
4}

GZIP 아카이브 오픈

다음 코드 예제는 GZIP 아카이브를 열는 방법을 보여줍니다.

 1try (gziparchive archive = new gziparchive (datadir + "archive.gz")) {
 2    try (fileoutputStream 추출 =  FileOutputStream (datAdir + "data.bin")) {
 3        inputStream 포장되지 않은 = archive.open ();
 4        바이트 [] B = 새로운 바이트 [8192];
 5        int bytesread;
 6        while (0 <(bytesRead = 포장되지 않은. 읽기 (b, 0, b.length))) {
 7            extracted.write (b, 0, 바이트 스레드);
 8        }
 9    }
10} catch (ioException ex) {
11    System.out.println (예);
12}

출력 스트림에 추출

다음 코드 예제는 스트림에서 아카이브를 열고 BytearRayoutputStream으로 추출하는 방법을 보여줍니다.

 1bytearrayoutputStream outputStream = new BytearRayoutputStream ();
 2try (gziparchive archive = new gziparchive (new FileInputStream (datadir + "sample.gz"))) {
 3    바이트 [] B = 새로운 바이트 [8192];
 4    int bytesread;
 5    inputstream archivestream = archive.open ();
 6    while (0 <(bytesread = archivestream.read (b, 0, b.length))) {
 7        outputStream.write (b, 0, 바이트 스레드);
 8    }
 9    System.out.println (Archive.getName ());
10} catch (ioException ex) {
11    System.out.println (예);
12}

출력 스트림에 저장

다음 코드 예제는 OutputStream에 열고 저장하는 방법을 보여줍니다.

1bytearrayoutputStream outputStream = new BytearRayoutputStream ();
2try (gziparchive archive = new gziparchive ()) {
3    archive.setsource (새 파일 (datadir + "data.bin");
4    Archive.save (OutputStream);
5}
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.