access,_waccess

提供: RAD Studio
Access, waccessから転送)
移動先: 案内検索

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 の結果は同じです。同様に,Win32 では,書き込みアクセスが読み出しアクセスも含むため,amode 値の 06 と 02 は同等になります。

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 のみ