gpt4 book ai didi

c++ - 需要从png文件中读取数据并保存到新文件中,如何? C++

转载 作者:搜寻专家 更新时间:2023-10-31 01:16:46 25 4
gpt4 key购买 nike

我尝试从一个 PNG 文件中读取数据,并想将此数据写入新文件并保存。我做这样的事情:

FILE *fp = fopen("C:\\dev\\1.png", "rb");
fseek(fp, 0, SEEK_END);
long size = ftell(fp);
rewind(fp);
char *buffer = (char*)malloc(sizeof(char)*size);
size_t result = fread(buffer, 1, size, fp);
FILE *tmpf = fopen("C:\\dev\\1_1.png", "wb");
fputs(buffer, tmpf);
fflush(tmpf);
fclose(tmpf);

我有问题,第二个文件只有它的内容,只有:‰PNG SUB

在调试中,我已经检查过,long size = 652521,并且 size_t 结果具有相同的大小...不明白,为什么我不能将所有数据写入第二个文件...

最佳答案

不要使用 fputs - 使用 fwrite - fputs 用于字符串,将在第一个零字节处终止。

改变:

fputs(buffer, tmpf);

到:

fwrite(buffer, 1, size, tmpf);

关于c++ - 需要从png文件中读取数据并保存到新文件中,如何? C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8790150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com