GZIP 아카이브와 협력합니다
Contents
[
Hide
Show
]개요
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}