f_write

The f_write writes data to a file.

FRESULT f_write (
  FIL* FileObject,     /* Pointer to the file object structure */
  const void* Buffer,  /* Pointer to the data to be written */
  UINT ByteToWrite,    /* Number of bytes to write */
  UINT* ByteWritten    /* Pointer to the variable to return number of bytes written */
);

Parameters

FileObject
Pointer to the open file object structure.
Buffer
Pointer to the data to be written.
ByteToWrite
Specifies number of bytes to write in range of UINT.
ByteWritten
Pointer to the UINT variable to return the number of bytes written. The value is always valid after the function call regardless of the result.

Return Values

FR_OK (0)
The function succeeded.
FR_DENIED
The function denied due to the file has been opened in non-write mode.
FR_DISK_ERR
The function failed due to an error in the disk function.
FR_INT_ERR
The function failed due to a wrong FAT structure or an internal error.
FR_NOT_READY
The disk drive cannot work due to no medium in the drive or any other reason.
FR_INVALID_OBJECT
The file object is invalid.

Description

The R/W pointer in the file object is increased in number of bytes written. After the function succeeded, *ByteWritten should be checked to detect the disk full. In case of *ByteWritten < ByteToWrite, it means the volume got full during the write operation.

QuickInfo

Available when _FS_READONLY == 0.

See Also

f_open, f_read, fputc, fputs, fprintf, f_close, FIL

Return