C++ _access和_waccess的使用方法

 

C++ _access_waccess的使用方法

概述

头文件:<io.h>

判断文件的访问权限

原型

int _access( const char *path,   int mode);

int _waccess(const wchar_t *path, int mode );

参数

path  文件或目录路径

mode 访问权限设定

返回值

如果文件具有指定的访问权限,则函数返回0;如果文件不存在或者不能访问指定的权限,则返回-1。

备注

当path为文件时,_access函数判断文件是否存在,并判断文件是否可以用mode值指定的模式进行访问。当path为目录时,_access只判断指定的目录是否存在,在Windows NT和Windows 2000中,所有的目录都有读写权限。

mode的值和含义如下表所示:

mode

检查文件

00

只检查文件是否存在

02

写权限

04

读权限

06

读写权限

_waccess是_access的宽字符版本,_waccess的参数path为宽字符的字符串,其他与_access相同。

 

实例

该实例使用_access判断文件是否存在,并判断文件是否可写。 

// crt_access.c

#include  <io.h>

#include  <stdio.h>

#include  <stdlib.h>

 

int main( void )

{

   /* 判断文件是否存在 */

   if( (_access( "crt_ACCESS.C", 0 )) != -1 )

   {

      printf( "File crt_ACCESS.C exists\n" );

      /* 判断文件是否可写 */

      /* 假设文件时只读的 */

      if( (_access( "crt_ACCESS.C", 2 )) == -1 )

         printf( "File crt_ACCESS.C does not have write permission\n" );

   }

}

输出:

File crt_ACCESS.C exists

File crt_ACCESS.C does not have write permission

posted @ 2014-02-11 10:42  私念之泪  Views(4320)  Comments(0Edit  收藏  举报