首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

fread读回车有关问题

2012-02-12 
fread读回车问题程序如下:read1nSize8nFinishSize0fseek(preFile,0,SEEK_SET)fseek(tempFile,0,SEE

fread读回车问题
程序如下:
    read   =   1;
    nSize   =   8;
    nFinishSize   =   0;
    fseek(preFile,   0,   SEEK_SET);
    fseek(tempFile,   0,   SEEK_END);
    while(read> 0)
    {
        read   =   fread(buff,   nSize,   1,   fp1);
        fwrite(buff,   size,   1,   fp2);
        nFinishSize   +=   size;
        fseek(fp1,   nFinishSize,   SEEK_SET);
        fseek(fp2,   nFinishSize,   SEEK_SET);
    }
文件内容:
AAA
AAJJSS

读一次8个字符,buff为
AAA
AAJJ

为什么fread读回车时,只读到一个字符?而从文件大小来看,回车是两个字符

[解决办法]
FILE *fp1=fopen( "??? ", "rb "); //如果是 r 方式,读取的字符数是不正确的

fread/fwrite 操作函数必须使用 二进制方式操作文件,
否则 读取/写入的 的字节数目可能不正确 ~

热点排行