完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
strcpy((char*)rbfDir,"1:/CODE/");
f_exe=(FIL *)gui_memin_malloc(sizeof(FIL));//开辟FIL字节的内存区域 exeplayinfo.lfsize=_MAX_LFN*2+1;//长文件名最大长度 exeplayinfo.lfname=mymalloc(SRAMIN,exeplayinfo.lfsize);//为长文件缓存区分配内存 rval=f_opendir(&exeplaydir,(const TCHAR*)rbfDir); //打开选中的目录 --打开的是BIN文件-- //if(rval)break; POINT_COLOR=RED; LCD_ShowString(30,50,200,16,16,"1!"); rval=f_readdir(&exeplaydir,&exeplayinfo);//读取文件信息 //if(rval)break;//打开成功 fn=(u8*)(*exeplayinfo.lfname?exeplayinfo.lfname:exeplayinfo.fname); POINT_COLOR=RED; LCD_ShowString(30,70,200,16,16,"2!"); pname=gui_memin_malloc(strlen((const char*)fn)+strlen((const char*)rbfDir)+2);//申请内存 POINT_COLOR=RED; LCD_ShowString(30,90,200,16,16,"3!"); if(pname==NULL)rval=1;//申请失败 { pname=gui_path_name(pname,rbfDir,fn);//文件名加入路径 POINT_COLOR=RED; LCD_ShowString(30,110,200,16,16,"4!"); rval=f_open(f_exe,(const TCHAR*)pname,FA_READ);//只读方式打开文件 POINT_COLOR=RED; LCD_ShowString(30,130,200,16,16,"5!"); //if(rval)break;//打开失败 if(f_exe->fsize gui_memset(mem2base,0,f_exe->fsize);//清空这片内存 rval=f_read(f_exe,mem2base,f_exe->fsize,(UINT*)&br);//读出BIN的所有内容 POINT_COLOR=RED; LCD_ShowxNum(50,300,f_exe->fsize,4,12,0); rbfsize = f_exe->fsize; //if(rval)break;//打开失败,直接退出 } } 为什么读出来的文件大小f_exe->fsize是零?求大神指教 |
|
相关推荐
4个回答
|
|
可能你文件大小就是0.
|
|
|
|
原子哥,文件夹1:/CODE/里边确实有个文件,大小422K。看了一下rval = f_opendir(&exeplaydir,(const TCHAR*)rbfDir);返回值是12,应该是内存分配有问题吧。但又找不出来。原子哥帮忙看下,谢谢~
|
|
|
|
|
|
|
|
谢谢原子哥,我再看看。
|
|
|
|
只有小组成员才能发言,加入小组>>
798 浏览 0 评论
1155 浏览 1 评论
2531 浏览 5 评论
2863 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2713 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1086浏览 3评论
195浏览 2评论
461浏览 2评论
374浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
455浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 09:26 , Processed in 1.251140 second(s), Total 84, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号