【書式】
#include <sys/types.h>
#include <sys/stat.h>
int stat(const char *pathname, struct stat *sbuf);
【解説】
stat() は pathnameで指定されるファイルに関する情報を得て、sbufが指す
struct stat型構造体に格納します。struct stat型は<sys/stat.h>で定義さ
れています。
DOS窓環境下ではstruct stat のうちの以下のフィールドのみが意味をもち
ます。
st_mode
ファイルのモード
st_nlink
常に1
st_size
ファイルのサイズ
st_mtime
ファイルが最後に修正された時刻
st_atime
st_mtimeと同じ
st_ctime
st_mtimeと同じ
st_mtime, st_atime, st_ctimeはすべてtime_t型です。詳細はtime(3)を参
照してください。
st_modeをS_IFMTでマスクすると、次の情報が得られます。
S_IFDIR
ディレクトリファイル
S_IFREG
通常のファイル
st_modeにはユーザのアクセス許可ビットも示されます。
S_IREAD
読み出し許可
S_IWRITE
書き込み許可
S_IEXEC
実行許可
実行許可はファイル名が*.EXE, *.COM, *.BATのとき、またはディレクトリ
のときにセットされます。
【リターン値】
成功したときには 0を返します。失敗したときにはerrnoをセットして0以外
の値を返します。
【エラー】
ENOENT
パスが見つかりません
【可搬性】
UNIX, DOS窓
【参照】
fstat(3), time(3)
【copyright (c) 安江正樹@東海大学理学部物理学科】