1
메모리 제한을 유지하기 위해 한 번에 한 줄씩 (한 번 디코딩 된) gzip 파일을 읽으려고합니다.gzopen이 전체 파일을 메모리로 읽습니까?
메모리 제한을 유지하기 위해 한 번에 한 줄씩 (한 번 디코딩 된) gzip 파일을 읽으려고합니다.gzopen이 전체 파일을 메모리로 읽습니까?
아니요, 파일을 메모리로 읽지 않습니다. documentation을 보면 아카이브 된 파일에 자원을 반환한다는 것을 알 수 있습니다. 그런 다음 다른 함수를 사용하여 특정 양의 데이터를 읽을 수 있습니다 (첫 번째 줄 구분 기호 또는 고정 바이트 수 또는 전체 파일까지). 사용 가능한 함수를 보면 파일 API의 함수와 매우 유사하다는 것을 알 수 있습니다.
보너스 : 당신은 표준 파일 API를 사용하려면 아카이브를 엽니 다 compress.zlib://
래퍼를 사용할 수 있습니다.
파일을 gzopened 한 후에'fgets'을 사용할 수 있습니까? 아니면 같은 일을하지 않는'gzread'를 사용해야합니까?! – fire
@fire'gzgets'을 사용하면'fgets'가 일반 파일과 동일한 일을 할 수 있습니다. –
@fire 아카이브를 여는 다른 방법에 대한 최신 편집을 참조하십시오. –