关于文件(求帮忙),该如何解决

关于文件(求帮忙)
 
我同时打开两个文件,一个读,一个写,而且我现在知道读的这个文件比如说有100个字符,然后往那个写的文件里面写,不能写全,只能写一部分,经过调试,发现是读的文件没读完。求解。。。可能是什么问题???




------解决方案--------------------
可能是申请的空间小了,缓冲不够了?
------解决方案--------------------
缓冲空间小了
------解决方案--------------------
你说的没读全,是没读到文件结尾吗?如果读到文件结尾返回EOF,你能贴出部分代码吗?
------解决方案--------------------
不要相信自己的判断,通过文件指针偏移就可以知道你实际读的文件大小
C/C++ code

/****************************************************************************************************
**Ãû³Æ:int LocalFile()
**¹¦ÄÜ:¶ÁÈ¡±¾µØÎļþ£¬×ª»»³É×Ö·û´®
* Èë¿Ú:ÐèÒª±£´æµÄ¶ÁÈ¡ÎļþÄÚÈݵÄÊý×é
* ³ö¿Ú:ÎÞ
**auth:linchudong, date: 2011-11-8 8:55
*****************************************************************************************************/
int LocalFile(char *sendbuffer,char *dev)
{
    int mode;
    FILE *sendfile;
    int file_len;
    if((sendfile = fopen(dev,"a+")) == NULL)
    {
        DBG_ERROR("open testfile false!\n");
        mode = FALE;
    }
    /*Calculate file length*/
    fseek(sendfile, 0L, SEEK_SET); 
    fseek(sendfile, 0L, SEEK_END); 
    file_len = ftell(sendfile);
    fseek(sendfile, 0L, SEEK_SET); 
    DBG_NORMAL("file_len = %d\n",file_len);
    /*Read content from file*/
    if(file_len != fread(sendbuffer,1,file_len,sendfile))
    {
        DBG_ERROR("fread error\n");
        mode = FALE;
    }
    else
    {
        mode = SUCC;    
    }
    
    fclose(sendfile);
    return mode;
}

/****************************************************************************************************
**Ãû³Æ:int ReceiveFile()
**¹¦ÄÜ:½ÓÊÕ·¢Ë͵ÄÄÚÈÝ£¬×ª»»³ÉÎļþ
* Èë¿Ú:ÎÞ
* ³ö¿Ú:ÎÞ
**auth:linchudong, date: 2011-11-8 8:55
*****************************************************************************************************/
int ReceiveFile(char *receivebuffer,char *dev)
{
    int mode;
    FILE *receivefile;
    int file_len;
    if((receivefile = fopen(dev,"w+")) == NULL)
    {
        DBG_ERROR("open testfile false!\n");
        mode = FALE;
    }
    
    file_len = strlen(receivebuffer);
    DBG_NORMAL("file_len = %d\n",file_len);
    /*Write content from file*/
    if(file_len != fwrite(receivebuffer,1,file_len,receivefile))
    {
        DBG_ERROR("fwrite error\n");
        mode = FALE;
    }
    else
    {
        mode = SUCC;    
    }
    fclose(receivefile);
    return mode;
}