정적/사전 설정 사전 인 DEFLATE 알고리즘을 사용하여 인코딩 된 데이터로 올바른 gzip 파일 (표준 Linux gzip
을 사용하여 압축 해제 할 수 있음)을 만들려고합니다.정적 사전을 사용하여 유효한 gzip을 만들 수 있습니까?
DEFLATE과 gzip에 대한 사양을 모두 읽었습니다. 불가능한 것처럼 보입니다.
- 동적 사전 (슬라이딩 윈도우) 등으로 압축 블록
0
설정FDICT
플래그 헤더로 시작 : I는 DEFLATE 명세서에서 얻을 같이 압축 데이터 블록에 대한 부호화의 두 종류가있다. - 는
FDICT = 1
으로, 정적 (미리 사전)로 압축하지만 실제로 파일에 같은 사전을 작성하는 방법을 찾을 수 없습니다. 내 사전/사전에 일부 헤더를 추가하거나 다른 방법으로 gzip을 FDICT = 1
으로 인코딩 된 데이터의 압축을 풀 수 있습니까?
P. Java의 Deflate
클래스를 사용하여이를 수행하려고하지만 이와 같은 방식으로 압축 된 블록의 actuall gzip 지원에 관심이 있습니다.
고맙습니다! 이제 마지막으로 두 개의 분리 된 알고리즘이 있고 DEFLATE 출력에서 다른 출력 (특히 LZ77 압축 데이터가 허프만 코딩을 사용하여 압축 됨)으로 파이프됩니다. 내가 언급 한 그 사전은 LZ77을위한 프리로드 슬라이딩 윈도우 였고 gzip은 unwrap 된 deflate 출력을 사용했지만 (zlib만이 FDICT를 지원했다. – dbolotin