fatts文件系统检查文件或目录是否存在

芯片型号:STM32F407 
函数名称:  FRESULT f_stat (const TCHAR* path, FILINFO* fno)


功能说明:    

       path 指向以null结尾的字符串的指针,该字符串指定要获取其信息的路径,不能是根目录。fno  指向FILINFO结构体来存储对象的信息,如果不需要此信息,请设置空指针。
 

FRESULT fr;
FILINFO fno;

printf("Test for 'file.txt'...\n");

fr = f_stat("file.txt", &fno);
switch (fr) {

case FR_OK:
    printf("Size: %lu\n", fno.fsize);
    break;

case FR_NO_FILE:
    printf("It is not exist.\n");
    break;

default:
    printf("An error occured. (%d)\n", fr);
}


FRESULT返回值说明:

typedef enum {
    FR_OK = 0,                /* (0) Succeeded */
    FR_DISK_ERR,            /* (1) A hard error occurred in the low level disk I/O layer */
    FR_INT_ERR,                /* (2) Assertion failed */
    FR_NOT_READY,            /* (3) The physical drive cannot work */
    FR_NO_FILE,                /* (4) Could not find the file */
    FR_NO_PATH,                /* (5) Could not find the path */
    FR_INVALID_NAME,        /* (6) The path name format is invalid */
    FR_DENIED,                /* (7) Access denied due to prohibited access or directory full */
    FR_EXIST,                /* (8) Access denied due to prohibited access */
    FR_INVALID_OBJECT,        /* (9) The file/directory object is invalid */
    FR_WRITE_PROTECTED,        /* (10) The physical drive is write protected */
    FR_INVALID_DRIVE,        /* (11) The logical drive number is invalid */
    FR_NOT_ENABLED,            /* (12) The volume has no work area */
    FR_NO_FILESYSTEM,        /* (13) There is no valid FAT volume */
    FR_MKFS_ABORTED,        /* (14) The f_mkfs() aborted due to any problem */
    FR_TIMEOUT,                /* (15) Could not get a grant to access the volume within defined period */
    FR_LOCKED,                /* (16) The operation is rejected according to the file sharing policy */
    FR_NOT_ENOUGH_CORE,        /* (17) LFN working buffer could not be allocated */
    FR_TOO_MANY_OPEN_FILES,    /* (18) Number of open files > _FS_LOCK */
    FR_INVALID_PARAMETER    /* (19) Given parameter is invalid */
} FRESULT;

FILINFO结构体说明:

typedef struct {
    FSIZE_t    fsize;            /* File size */
    WORD    fdate;            /* Modified date */
    WORD    ftime;            /* Modified time */
    BYTE    fattrib;        /* File attribute */
#if _USE_LFN != 0
    TCHAR    altname[13];            /* Alternative file name */
    TCHAR    fname[_MAX_LFN + 1];    /* Primary file name */
#else
    TCHAR    fname[13];        /* File name */
#endif
} FILINFO;

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小枭码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值