Как передать файл tar.gz с помощью http post? - PullRequest
0 голосов
/ 28 января 2019

Я хочу отправить файл tar.gz, используя HTTP post в C. Однако при чтении файла tar.gz, используя fread (), он читает только 3 байта.

char *pszfile = null;

FILE *fp = fopen("c:\\test.tar.gz", "rb");

int nSize = 0;

if(fpFile)

{

    fseek(fp, 0, SEEK_END);

    nSize = ftell(fp);

    fseek(fp, 0, SEEK_SET);

    pszfile = (char*)malloc(nSize+1);

    memset(pszfile, 0x00, nSize+1);

    int nReadSize = fread(pszfile, nSize, 1, fp);

    nReadSize = strlen(pszfile);

    printf("pszfile data = %s\n", pszfile);

}

pszfile результат чтения= "?"

Как прочитать файл tar.gz, используя fread()?

1 Ответ

0 голосов
/ 28 января 2019

Не используйте strlen, чтобы найти размер двоичного файла.Используйте nReadSize, чтобы получить действительные байты, прочитанные fread

...