为什么我用f_readdir()函数读取文件目录下面的文件有的能够读出来有的不能读出来呢?比su文件夹里面有1.text文件和2.text和3.text文件为什么就只能够读出1.text文件呢??代码如下,备注复制上来是乱码程序比较简单也没有备注了!希望大侠帮我看看,谢谢!!
FATFS fs; // Work area (file system object) for logical drive
FRESULT res;
UINT br;
FIL fsrc;
FILINFO finfo;
DIR dirs;
uint16_t count = 0;
char lfn[60];
char j = 0;
char path[50] = {"0:/su"};
char *result1, *result2, *result3, *result4;
int main(void)
{
USART1_Config();
printf("\r\n sadfasf sadfasfasdfasdfasdfsfdgh \r\n");
/* Sdio Interrupt Config */
NVIC_Configuration();
finfo.lfname = lfn;
finfo.lfsize = sizeof(lfn);
f_mount(0, &fs);
if (f_opendir(&dirs,path) == FR_OK)
{
while (f_readdir(&dirs, &finfo) == FR_OK)
{
if ( finfo.fattrib & AM_ARC )
{
if(finfo.lfname[0] == NULL && finfo.fname !=NULL)
finfo.lfname =finfo.fname;
if( !finfo.lfname[0] )
break;
printf( " \r\n 文件名是: %s \r\n",finfo.lfname );
count = 0;
f_close(&fsrc);
}
}
}
}
|