f_stat

The f_stat function checks the existence of a file or sub-directory.

FRESULT f_stat (
  const TCHAR* path,  /* [IN] Object name */
  FILINFO* fno        /* [OUT] FILINFO structure */
);

Parameters

path
Pointer to the null-terminated string that specifies the object to get its information.
fno
Pointer to the blank FILINFO structure to store the information of the object. Set null pointer if it is not needed.

Return Values

FR_OK, FR_DISK_ERR, FR_INT_ERR, FR_NOT_READY, FR_NO_FILE, FR_NO_PATH, FR_INVALID_NAME, FR_INVALID_DRIVE, FR_NOT_ENABLED, FR_NO_FILESYSTEM, FR_TIMEOUT, FR_NOT_ENOUGH_CORE

Description

The f_stat() function checks the existence of a file or sub-directory. If not exist, the function returns with FR_NO_FILE. If exist, the function returns with FR_OK and the informations of the object, file size, timestamp, attribute and SFN, are stored to the file information structure. For details of the file information, refer to the FILINFO structure and f_readdir() function.

When LFN feature is enabled, lfname in the file information structure must be NULLed prior to use it.

QuickInfo

Available when _FS_MINIMIZE == 0.

Example

    FRESULT fr;
    FILINFO fno;


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

#if _USE_LFN
    fno.lfname = 0;
#endif
    fr = f_stat("file.txt", &fno);
    switch (fr) {

    case FR_OK:
        printf("Size: %u\n", fno.fsize);
        printf("Timestamp: %u/%02u/%02u, %02u:%02u\n",
               (fno.fdate >> 9) + 1980, fno.fdate >> 5 & 15, fno.fdate & 31,
               fno.ftime >> 11, fno.ftime >> 5 & 63);
        printf("Attributes: %c%c%c%c%c\n",
               (fno.fattrib & AM_DIR) ? 'D' : '-',
               (fno.fattrib & AM_RDO) ? 'R' : '-',
               (fno.fattrib & AM_HID) ? 'H' : '-',
               (fno.fattrib & AM_SYS) ? 'S' : '-',
               (fno.fattrib & AM_ARC) ? 'A' : '-');
        break;

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

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

References

f_opendir, f_readdir, FILINFO

Return