access、_waccess

提供: RAD Studio
移動先: 案内検索

Io.h:インデックス への移動


ヘッダー ファイル

io.h

カテゴリ

入出力ルーチン

プロトタイプ

int access(const char *filename, int amode);
int _waccess(const wchar_t *filename, int amode);

説明

ファイルのアクセサビリティを判断します。

access は、filename で指定された名前のファイルが存在するかどうか、またそれが、読み、書き、実行ができるかどうかをチェックします。

amode 値のリストは次の通りです:

06

読み書きの権限をチェック

04

読み込みの権限をチェック

02

書き込みの権限をチェック

01

実行(無視される)

00

ファイルの存在をチェック



既存ファイルにはすべて読み込み権限があるため(amode は 04)、00 および 04 は同じ結果となります。 同様に、06 および 02 の amode 値も同じになります。これは、Win32 下では、書き込み権限が読み込み権限も含むためです。

filename がディレクトリを参照している場合、access は単純にそのディレクトリが存在しているかどうかを判別します。

戻り値

要求されたアクセスが許可される場合、access は 0 を返します。そうでなければ、値 -1 を返し、グローバル変数 errno が、次のいずれかの値に設定されます:

ENOENT

パスまたはファイル名が見つからない

EACCES

アクセスが拒否されました



#include <stdio.h>
#include <io.h>
int file_exists(char *filename);
int main(void)
{
    printf("Does NOTEXIST.FIL exist: %s\n",
    file_exists("NOTEXISTS.FIL") ? "YES" : "NO");
    return 0;
}

int file_exists(char *filename)
{
    return (access(filename, 0) == 0);
}

移植性

POSIX Win32 ANSI C ANSI C++

アクセス

+

+

_waccess

NT のみ