二进制遍历读取文件如何操作好
二进制遍历读取文件怎么操作好?fgetc(inFile)这样可以么?怎么判断操作到文件尾了呢?我想要一个字节一个字
二进制遍历读取文件怎么操作好?
fgetc(inFile);
这样可以么?怎么判断操作到文件尾了呢?
我想要一个字节一个字节的遍历读取二进制文件内容,该怎么操作?
[解决办法]
[解决办法]不要把
fopen("...","...");fscanf,fprintf,fclose //读时把\r\n替换成\n,写时把\n替换成\r\n;读到\x1a就设置EOF;读写的内容当字符看待
和
fopen("...","...b");fread,fwrite,fclose //不作以上替换,遇到\x1a仍继续读;读写的内容当字节看待
弄混了
仅供参考
C/C++ code#include <stdio.h>FILE *fi,*fo;void main() { fo=fopen("500M.out","wb"); fi=fopen("500M.in","rb"); fseek(fi,-1L,SEEK_END); while (1) { fputc(fgetc(fi),fo); if (fseek(fi,-2,SEEK_CUR)) break; } fclose(fi); fclose(fo);}