FatFs R0.12移植,不能分辨中文文件和文件夹

2019-10-15 02:22发布

请问各位大神,我在使用STM32F103ZET6  移直FatFs R0.12、FatFs R0.12a 和 FatFs R0.12b版本时,通过判断(fno.fattrib & AM_ARC) 和(fno.fattrib & AM_DIR)来辨别读取指定目录下的文件类别时,有时候会读到fno.fattrib=0x00;特别是中文文件和中文文件夹时,就不能识别他的类型,请问有什么办法可以解决?
这是源代码
unsigned char CheckUpDataFiles( void ){
       
        u8 res = 0;

        if(f_opendir(&dir,"0:/") == FR_OK) { // 打开 文件夹成功
                        while(f_readdir(&dir, &fno) == FR_OK) { // 读目录信息到文件状态结构体中
                                if(!fno.fname[0]) break; // 0,结束
                                if(fno.fattrib & AM_ARC        ) { // // 如果是文件
                                                 USART1_printf("文件 %s ",fno.fname);       
                                                                                               
                                }
                                else if(fno.fattrib & AM_DIR ) {// 如果是文件夹                                                       
                                                USART1_printf("文件夹 %s ",fno.fname);       
                                }
                                else{
                                        USART1_printf("错误%d %s ",fno.fattrib,fno.fname);       
                                }
                        }
                        f_closedir(&dir);//关闭目录
                }
        else{
                USART1_printf("文件打开失败 ");       
        }
        return 0;
}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
正点原子
1楼-- · 2019-10-15 02:28
参考我们例程吧
Sonicro
2楼-- · 2019-10-15 06:51
正点原子 发表于 2016-11-27 14:28
参考我们例程吧

看了的,我之前买的战舰STM32开发板,那个用的是R009,我又把阿波罗的程序下载下来看了一下,感觉差不多,就是不清楚为什么读到的属性不对
pdwdzz
3楼-- · 2019-10-15 12:49
 精彩回答 2  元偷偷看……

一周热门 更多>