Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menentukan apakah file bersifat baca-saja atau tidak. Versi yang lebih aman tersedia; lihat _access_s, _waccess_s.
Untuk _taccess, lihat Pemetaan fungsi teks generik.
Sintaks
int _access(
const char *path,
int mode
);
int _waccess(
const wchar_t *path,
int mode
);
Parameter
path
Jalur file atau direktori.
mode
Atribut baca/tulis.
Nilai hasil
Setiap fungsi mengembalikan 0 jika file memiliki mode yang diberikan. Fungsi mengembalikan -1 jika file bernama tidak ada atau tidak memiliki mode yang diberikan; dalam hal ini, errno diatur seperti yang ditunjukkan dalam tabel berikut.
| Nilai | Deskripsi |
|---|---|
EACCES |
Akses ditolak: pengaturan izin file tidak mengizinkan akses yang ditentukan. |
ENOENT |
Nama file atau jalur tidak ditemukan. |
EINVAL |
Parameter tidak valid. |
Untuk informasi selengkapnya tentang kode pengembalian ini dan lainnya, lihat errno, , _doserrno_sys_errlist, dan _sys_nerr.
Keterangan
Ketika digunakan dengan file, _access fungsi menentukan apakah file atau direktori yang ditentukan ada dan memiliki atribut yang ditentukan oleh nilai mode. Ketika digunakan dengan direktori, _access menentukan hanya apakah direktori yang ditentukan ada; di sistem operasi Windows 2000 dan yang lebih baru, semua direktori memiliki akses baca dan tulis.
mode nilai |
Memeriksa file untuk |
|---|---|
| 00 | Hanya ada |
| 02 | Hanya tulis |
| 04 | Baca-saja |
| 06 | Baca dan tulis |
Fungsi ini hanya memeriksa apakah file dan direktori bersifat baca-saja atau tidak, fungsi ini tidak memeriksa pengaturan keamanan sistem file. Untuk itu Anda memerlukan token akses. Untuk informasi selengkapnya tentang keamanan sistem file, lihat Token akses. Kelas ATL ada untuk menyediakan fungsionalitas ini; lihat CAccessToken Kelas.
_waccess adalah versi karakter luas dari _access; path argumen ke _waccess adalah string karakter lebar. _waccess dan _access berulah secara identik jika tidak.
Fungsi ini memvalidasi parameternya. Jika path adalah NULL atau mode tidak menentukan mode yang valid, handler parameter yang tidak valid dipanggil, seperti yang dijelaskan dalam Validasi parameter. Jika eksekusi diizinkan untuk melanjutkan, fungsi diatur errno ke EINVAL dan mengembalikan -1.
Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.
Pemetaan fungsi teks generik
Tchar.h Rutin |
_UNICODE dan _MBCS tidak ditentukan |
_MBCS Didefinisikan |
_UNICODE Didefinisikan |
|---|---|---|---|
_taccess |
_access |
_access |
_waccess |
Persyaratan
| Rutin | Header yang diperlukan | Header opsional |
|---|---|---|
_access |
<io.h> |
<errno.h> |
_waccess |
<wchar.h> atau <io.h> |
<errno.h> |
Contoh
Contoh berikut menggunakan _access untuk memeriksa file bernama crt_ACCESS.C untuk melihat apakah ada dan apakah penulisan diizinkan.
// crt_access.c
// compile with: /W1
// This example uses _access to check the file named
// crt_ACCESS.C to see if it exists and if writing is allowed.
#include <io.h>
#include <stdio.h>
#include <stdlib.h>
int main( void )
{
// Check for existence.
if( (_access( "crt_ACCESS.C", 0 )) != -1 )
{
printf_s( "File crt_ACCESS.C exists.\n" );
// Check for write permission.
// Assume file is read-only.
if( (_access( "crt_ACCESS.C", 2 )) == -1 )
printf_s( "File crt_ACCESS.C does not have write permission.\n" );
}
}
File crt_ACCESS.C exists.
File crt_ACCESS.C does not have write permission.
Lihat juga
Penanganan file
_chmod, _wchmod
_fstat, , _fstat32_fstat64, _fstati64, , _fstat32i64,_fstat64i32
_open, _wopen
_stat, _wstat fungsi