我想要用zlib庫讀取一個gz檔案的二進制資料,但gzread()和gzgets()都讀取不出來,并且自動退出程式了
代碼:
#include <zlib.h>
#include <iostream>
#include <string>
using namespace std;
int main()
{
char *filename = "TS21z_X_R2_000100.gz";
gzFile gzfp = gzopen(filename, "rb");
if (gzfp == NULL)
{
printf("error\n");
return false;
}
//分配4個位元組(float)
char data[4];
memset(data, 0, sizeof(data));
//讀取4個位元組
gzread(gzfp, data, 4);
//gzgets(gzfp, data, 4);
printf("%f\n", *(float*)data);
gzclose(gzfp);
printf("successfully read earthquake data\n");
return 0;
}
uj5u.com熱心網友回復:
如果是二進制需要指定引數是不一樣的,比如那個"rb"好像還有另外的引數,樓主自己查查轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/230831.html
標籤:工具平臺和程序庫
