我使用fopen
和fread
进行此操作:
FILE *fp;
if (fopen_s(&fp, filePath, "rb"))
{
printf("Failed to open file\n");
//exit(1);
}
fseek(fp, 0, SEEK_END);
int size = ftell(fp);
rewind(fp);
char buffer = (char)malloc(sizeof(char)*size);
if (!buffer)
{
printf("Failed to malloc\n");
//exit(1);
}
int charsTransferred = fread(buffer, 1, size, fp);
printf("charsTransferred = %d, size = %d\n", charsTransferred, strlen(buffer));
fclose(fp);
我没有在新文件中获取文件数据。以下是原始文件(右)与通过网络发送的文件(左)之间的比较:
我的fopen电话有任何问题吗?
编辑:我无法取消空终止符,因为这是一个PDF。如果我摆脱它们,文件将会损坏。