本帖最后由 jimmjimm 于 2013-8-16 15:52 编辑
现在用fatfs传输文件一块为64bytes,我用lssek以后再加上puts或者printf都是可以正常写入文件的,但是因为buff后面没有清除所有最后那块会有残留的的数据,但是我把printf改成write以后,发现lseek没有作用,每次都是直接写在了文件的开始...有人遇到过这种情况么?这是我的代码
res = f_lseek(&fsrc,FLength);
f_write(&fsrc,(const TCHAR *)USB_Rx_Buffer,count_out,&ByteWrite);
// f_printf(&fsrc,(const TCHAR *)USB_Rx_Buffer);
FLength+=count_out;
把f_write注释掉换成f_prinf就没问题,可是会把buffer中残留的写进文件,f_write只会把最后一块写进文件
|