FS_ReadDirectory[W]

構文


#include <nitro/fs.h>

BOOL FS_ReadDirectory(FSFile *dir, FSDirectoryEntryInfo *info);
BOOL FS_ReadDirectoryW(FSFile *file, FSDirectoryEntryInfoW *info);

引数

dir ディレクトリハンドルを保持したFSFile構造体
info 得られたエントリ情報を格納すべきFSDirectoryEntryInfo構造体またはFSDirectoryEntryInfoW構造体

返り値

エントリ情報が正しく取得TRUEを、失敗すればFALSEを返します。
失敗時の詳細なエラーはFS_GetResultCode()で取得することができます。

説明

ディレクトリのハンドルから、エントリ情報を1個だけ読み進めます。
この関数を呼び出すたびにディレクトリの列挙位置は1個ずつ進んでいき、終端に達すると次からはFALSEを返します。
例えば3つのファイルを含むディレクトリをFS_OpenDirectory()で開き、 そのハンドルを使用してこの関数を呼び出すと、3回TRUEを返して4回目以降はFALSEを返します。

エントリ情報のlongnameフィールドをShift_JISで取得したい場合はFS_ReadDirectory()を、 UTF16-LEで取得したい場合はFS_ReadDirectoryW()を使用することができます。 SDカードアーカイブなど、内部がFAT構造のファイルシステムではShift_JISで表現できない文字が使用されている場合があります。

TWL専用ファイルに関するエントリ情報はNITROモードで動作しているときでも取得することができます。実際にファイルへアクセス可能かどうかはattributesフィールドのFS_ATTRIBUTE_IS_OFFLINEフラグを確認することによって判定可能です。

注意

参照

FSFile FSDirectoryEntryInfo
FS_OpenDirectory FS_CloseDirectory

履歴

2009/06/08 TWL専用ファイルの説明へのリンクを追加。
2009/01/08 TWL専用ファイルに関する説明を追記。
2008/09/02 Unicode版の関数について追記。
2007/09/18 初版