使用CH375FileEnumer不能检索出完整的文件名

[size=6] 程序如下 。。。。。。。。。。。 strcpy(mCmdParam.Enumer.mPathName,"/MUSIC/*");//检索MUSIC目录下所有文件 i=strlen(mCmdParam.Enumer.mPathName); mCmdParam.Enumer.mPathName[i]=EnumCount; if(CH375FileEnumer()!=ERR_SUCCESS) break;//检索完毕后退出循环 s[EnumCount]=(char xdata *)(0x00+EnumCount*23); strcpy(s[EnumCount],mCmdParam.Enumer.mPathName); if(strchr(mCmdParam.Enumer.mPathName,'3')!=NULL )//排除不是mp3格式的文件 printf("%s %p\n",s[EnumCount],s[EnumCount]); 。。。。。。。。。。。

输出结果如下 。。。。。。。。。。。 文件列表如下 /MUSIC/阳光总~1.MP3 x:002e /MUSIC/荷塘月色.MP3 x:0045 /MUSIC/LOVEST~1.MP3 x:005c /MUSIC/偶阵雨.MP3 x:0073 。。。。。。。。。。。

直接改到根目录也没用,在.mp3前只能显示8byte,单片机为89C52,读取的名称存取到片内拓展的1024byteRAM[/size]

我们的例程是枚举短文件名的例子,如果你想枚举完整的文件名你可以通过短文件名来获取长文件名。


神马意思,怎么通过短文件名来获取长文件名? 没看懂


在FAT文件系统中,文件名必须符合8+3的命名规则,所以每个长文件名都有一个对应的短文件名,具体长文件名的处理你可以参考EXAM11


只有登录才能回复,可以选择微信账号登录