## f_read

ファイルからデータを読み出します。

    FRESULT f_read (
      FIL* FileObject,    /* ファイル・オブジェクト構造体 */
      void* Buffer,       /* 読み出したデータを格納するバッファ */
      UINT ByteToRead,    /* 読み出すバイト数 */
      UINT* ByteRead      /* 読み出されたバイト数 */
    );

#### 引数

FileObject
  ファイル・オブジェクト構造体へのポインタを指定します。
Buffer
  読み出したデータを格納するバッファを指すポインタを指定します。
ByteToRead
  読み出すバイト数(0〜UINTの最大値)を指定します。
ByteRead
  実際に読み出されたバイト数を格納する変数を指すポインタを指定します。戻り値は関数の成否にかかわらず常に有効です。

#### 戻り値

FR_OK (0)
  正常終了。
FR_DENIED
  非読み込みモードで開いたファイルから読み込もうとした。
FR_DISK_ERR
  ディスク・エラーによる失敗。
FR_INT_ERR
  不正なFAT構造または内部エラーによる失敗。
FR_NOT_READY
  メディアがセットされていないなど、物理ドライブが動作不能状態。
FR_INVALID_OBJECT
  無効なファイル・オブジェクト。

#### 解説

読み込み開始位置は、現在のファイルR/Wポインタからになります。ファイルR/Wポインタは読み込まれたバイト数だけ進みます。読み込み中にファイルの終端に達すると、`*ByteRead`は`ByteToRead`よりも小さくなります。

#### 対応情報

全ての構成で使用可能です。

#### 参照

`f_open, fgets, f_write, f_close, FIL`

戻る