|
发表于 2020-7-1 09:47:32
|
显示全部楼层
- /*
- *********************************************************************************************************
- * 函 数 名: ViewRootDir
- * 功能说明: 显示NAND Flash目录下的文件名
- * 形 参: 无
- * 返 回 值: 无
- *********************************************************************************************************
- */
- static void ViewRootDir(void)
- {
- uint8_t result;
- FINFO info;
- uint64_t ullNANDCapacity;
- uint8_t buf[15];
-
- info.fileID = 0; /* 每次使用ffind函数前,info.fileID必须初始化为0 */
- /* 加载NAND Flash */
- result = finit("N0:");
- if(result != NULL)
- {
- /* 如果挂载失败,务必不要再调用FlashFS的其它API函数,防止进入硬件异常 */
- printf("挂载文件系统失败 (%s)\r\n", ReVal_Table[result]);
- goto access_fail;
- }
- else
- {
- printf("挂载文件系统成功 (%s)\r\n", ReVal_Table[result]);
- }
- printf("------------------------------------------------------------------\r\n");
- printf("文件名 | 文件大小 | 文件ID | 属性 |日期\r\n");
-
- /*
- 将根目录下的所有文件列出来。
- 1. "*" 或者 "*.*" 搜索指定路径下的所有文件
- 2. "abc*" 搜索指定路径下以abc开头的所有文件
- 3. "*.jpg" 搜索指定路径下以.jpg结尾的所有文件
- 4. "abc*.jpg" 搜索指定路径下以abc开头和.jpg结尾的所有文件
-
- 以下是实现搜索根目录下所有文件
- */
- while(ffind ("N0:*.*", &info) == 0)
- {
- /* 调整文件显示大小格式 */
- DotFormat(info.size, (char *)buf);
-
- /* 打印根目录下的所有文件 */
- printf ("%-20s %12s bytes, ID: %04d ",
- info.name,
- buf,
- info.fileID);
-
- /* 判断是文件还是子目录 */
- if (info.attrib & ATTR_DIRECTORY)
- {
- printf("(0x%02x)目录", info.attrib);
- }
- else
- {
- printf("(0x%02x)文件", info.attrib);
- }
-
- /* 显示文件日期 */
- printf (" %04d.%02d.%02d %02d:%02d\r\n",
- info.time.year, info.time.mon, info.time.day,
- info.time.hr, info.time.min);
- }
-
- if (info.fileID == 0)
- {
- printf ("NAND Flash中没有存放文件\r\n");
- }
-
- /* 获取NAND Flash剩余容量 */
- ullNANDCapacity = ffree("N0:");
- DotFormat(ullNANDCapacity, (char *)buf);
- printf("NAND FLASH的容量 = %10s字节\r\n", buf);
- access_fail:
- /* 卸载NAND Flash */
- result = funinit("N0:");
- if(result != NULL)
- {
- printf("卸载文件系统失败\r\n");
- }
- else
- {
- printf("卸载文件系统成功\r\n");
- }
-
- printf("------------------------------------------------------------------\r\n");
- }
复制代码 |
|