f_getfree

ディスクの未使用領域を得ます。

FRESULT f_getfree (
  DWORD* Clusters     // 空きクラスタ数を格納する変数へのポインタ
);

パラメータ

Clusters
空きクラスタ数を格納するDWORD変数へのポインタを指定します。

戻り値

FR_OK
正常終了。*Clustersに空きクラスタ数が返されます。
FR_NOT_READY
メディアがセットされていないなど、ディスクドライブが動作不能状態。
FR_RW_ERROR
ディスクアクセスでエラーが発生した。
FR_INCORRECT_DISK_CHANGE
不正なメディアの取り外しがあった。ファイルを開いたままのメディア交換など。
FR_NOT_ENABLED
FatFsモジュールが停止状態。
FR_NO_FILESYSTEM
ディスク上に有効なFATパーテーションが見つからない。

解説

ファイルシステム上の空きクラスタ数を取得します。FatFs.sects_clust がクラスタあたりのセクタ数を示しているので、これを元に実際の空きサイズが計算できます。

使用例

    DWORD clust;

    // Get free clusters
    res = f_getfree(&clust);
    if (res) die(res);

    // Get free bytes
    printf("%lu bytes available on the disk.\n", clust * FatFs->sects_clust * 512);

参照

FATFS

戻る