_dos_findfirst, _dos_findnext - ファイルの検索

【書式】

#include <dos.h>

unsigned _dos_findfirst(const char *path, unsigned attr, struct

find_t *buffer);

unsigned _dos_findnext(struct find_t *buffer);

【解説】

_dos_findfirst()はDOS窓システムコール0x4Eを実行し、pathとattrに一致

する最初のファイルを探します。

pathには検索したいファイル名を指定します。DOS窓のワイルドカード文字

('*', '?')を使用できます。

attrには検索したいファイルの属性を<dos.h> で定義されている次の値を論

理和してあたえます。

_A_NORMAL

通常のファイル

_A_HIDDEN

隠しファイル

_A_SYSTEM

システムファイル

_A_VOLID

ボリュームID

_A_SUBDIR

サブディレクトリ

最初に一致したファイルの情報は *bufferにセットされます。find_t型構造

体は<dos.h>で次のように定義されています。

struct find_t {

char reserved[21];

char attrib; /* 属性 */

unsigned wr_time; /* 修正時刻 */

unsigned wr_date; /* 修正日付 */

long size; /* ファイルサイズ */

char name[13]; /* ファイル名 */

};

_dos_findnext()はDOS窓システムコール0x4Fによって_dos_findfirst() で

指定したファイルの検索を続行します。bufferは_dos_findfirst()によって

正しく設定されていなければなりません。次に一致するファイルを見つける

と、*bufferにはそのファイルの情報がセットされます。

【リターン値】

成功すると0を返します。失敗するとerrnoをセットし、DOS窓のエラーコー

ドを返します。

【エラー】

ENOENT

ファイルがありません

【可搬性】

DOS窓

【copyright (c) 安江正樹@東海大学理学部物理学科】