From 20236a8a990cae729bca1f7a4e0d619e92a5e37d Mon Sep 17 00:00:00 2001 From: Damien George Date: Sat, 20 Dec 2014 21:15:16 +0000 Subject: stmhal: Upgrade to latest fatfs driver. --- stmhal/fatfs/doc/ja/readdir.html | 125 --------------------------------------- 1 file changed, 125 deletions(-) delete mode 100644 stmhal/fatfs/doc/ja/readdir.html (limited to 'stmhal/fatfs/doc/ja/readdir.html') diff --git a/stmhal/fatfs/doc/ja/readdir.html b/stmhal/fatfs/doc/ja/readdir.html deleted file mode 100644 index 3844809a6..000000000 --- a/stmhal/fatfs/doc/ja/readdir.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - - - -FatFs - f_readdir - - - - -
-

f_readdir

-

ディレクトリ項目を読み出します

-
-FRESULT f_readdir (
-  DIR* dp,      /* [IN] ディレクトリ・ブジェクト構造体へのポインタ */
-  FILINFO* fno  /* [OUT] ファイル情報構造体へのポインタ */
-);
-
-
- -
-

引数

-
-
dp
-
有効なディレクトリ・オブジェクト構造体へのポインタを指定します。
-
fno
-
読み出したディレクトリ項目を格納するファイル情報構造体へのポインタを指定します。
-
-
- - -
-

戻り値

-

-FR_OK, -FR_DISK_ERR, -FR_INT_ERR, -FR_NOT_READY, -FR_INVALID_OBJECT, -FR_TIMEOUT, -FR_NOT_ENOUGH_CORE -

-
- - -
-

解説

-

ディレクトリの項目(ファイルとディレクトリ)を順次読み出します。この関数を繰り返し実行することによりそのディレクトリの全ての項目を読み出すことができます。全ての項目が読み出され、読み出す項目がもう無いときは、fname[]メンバにヌル文字列が返されます。ドット・エントリ("."、"..")は、相対パスが有効なとき(_FS_RPATH >= 1)にのみ現れます。得られるファイル情報の詳細については FILINFO構造体を参照してください。fnoにヌル・ポインタを指定すると、そのディレクトリのリード・インデックスを先頭に巻き戻します。

-

LFN機能が有効な時は、f_readdir()関数の呼び出しに先立ってFILINFO構造体のlfnamelfsizeが有効な値で初期化されていなければなりません。lfnameはLFNを格納するバッファで、lfsizeはそのバッファの要素数です。LFNを読み出す必要がないときは、lfnameにヌル・ポインタをセットしてください。次の条件に一つでも該当する場合は、LFN格納バッファにヌル文字列が返されます。

- -

また、ディレクトリ項目にLFN情報が存在しない場合は、fname[]に英小文字が含まれる場合があります。

-
- - -
-

対応情報

-

_FS_MINIMIZE <= 1のときに使用可能です。

-
- - -
-

使用例

-
-FRESULT scan_files (
-    char* path        /* 開始ノード (ワークエリアとしても使用) */
-)
-{
-    FRESULT res;
-    FILINFO fno;
-    DIR dir;
-    int i;
-    char *fn;   /* 非Unicode構成を想定 */
-#if _USE_LFN
-    static char lfn[_MAX_LFN + 1];
-    fno.lfname = lfn;
-    fno.lfsize = sizeof lfn;
-#endif
-
-
-    res = f_opendir(&dir, path);                       /* ディレクトリを開く */
-    if (res == FR_OK) {
-        i = strlen(path);
-        for (;;) {
-            res = f_readdir(&dir, &fno);                   /* ディレクトリ項目を1個読み出す */
-            if (res != FR_OK || fno.fname[0] == 0) break;  /* エラーまたは項目無しのときは抜ける */
-            if (fno.fname[0] == '.') continue;             /* ドットエントリは無視 */
-#if _USE_LFN
-            fn = *fno.lfname ? fno.lfname : fno.fname;
-#else
-            fn = fno.fname;
-#endif
-            if (fno.fattrib & AM_DIR) {                    /* ディレクトリ */
-                sprintf(&path[i], "/%s", fn);
-                res = scan_files(path);
-                if (res != FR_OK) break;
-                path[i] = 0;
-            } else {                                       /* ファイル */
-                printf("%s/%s\n", path, fn);
-            }
-        }
-        f_closedir(&dir);
-    }
-
-    return res;
-}
-
-
- - -
-

参照

-

f_opendir, f_closedir, f_stat, FILINFO, DIR

-
- -

戻る

- - -- cgit v1.2.3