pf_open

The pf_open function opens an existing file.

FRESULT pf_open (
  const char* path  /* [IN] Pointer to the file neme */
);

Parameters

path
Pointer to a null-terminated string that specifies the file name to open.

Return Values

FR_OK (0)
The function succeeded.
FR_NO_FILE
Could not find the file.
FR_NO_PATH
Could not find the path.
FR_DISK_ERR
The function failed due to an error in the disk function, a wrong FAT structure or an internal error.
FR_NOT_ENABLED
The volume has not been mounted.

Description

The file must be opend prior to use pf_read() and pf_lseek() function. The open file is valid until next open.

Example

void main (void)
{
    FATFS fs;          /* Work area (file system object) for the volume */
    BYTE buff[16];     /* File read buffer */
    UINT br;           /* File read count */
    FRESULT res;       /* Petit FatFs function common result code */


    /* Mount the volume */
    pf_mount(&fs);
    if (res) die(res);

    /* Open a file */
    res = pf_open("srcfile.dat");
    if (res) die(res);

    /* Read data to the memory */
    res = pf_read(buff, 16, &br);    /* Read data to the buff[] */
    if (res) die(res);               /* Check error */
    if (br != 16) die(255);          /* Check EOF */

    ....

    /* Forward data to the outgoing stream */
    do
        res = pf_read(0, 512, &br);  /* Send data to the stream */
    while (res || br != 512);        /* Break on error or eof */

    ....

    /* Unregister the work area before discard it */
    f_mount(0);
}

QuickInfo

Always available.

References

pf_read, FATFS

Return