在用FATFS读取SD卡中的文件,需要对文件名按规则排序。
文件名存放在了二维字符数组中
u8 fileList[MAX_FILE_COUNT][30];//保存文件名
调用stdlib.h中的qsort函数进行排序
static int cmp(const void *a,const void *b)
{
return strcmp(( char * ) a, (const char* )b);
}
qsort(fileList, fcount, sizeof(fileList[0]), cmp);
下面是对fname排序的打印信息。
第0个文件:
fname: LXL_IAP_Slave.bin
fsize: 4872
第1个文件:
fname: Handheld.bin
fsize: 46060
第2个文件:
fname: LXL_IAP_Master.bin
fsize: 44200
--------------------after sort--------------------
第0个文件:
fname: Handheld.bin
第1个文件:
fname: LXL_IAP_Master.bin
第2个文件:
fname: LXL_IAP_Slave.bin