_sopen, _wsopen
공유를 위해 파일을 엽니다.이러한 함수를 더 안전한 버전을 사용할 수 있습니다. see _sopen_s, _wsopen_s.
int _sopen(
const char *filename,
int oflag,
int shflag [,
int pmode ]
);
int _wsopen(
const wchar_t *filename,
int oflag,
int shflag [,
int pmode ]
);
매개 변수
filename
파일 이름.oflag
허용 되는 작업의 형식입니다.shflag
허용 공유 형식입니다.pmode
사용 권한 설정 합니다.
반환 값
이러한 각 함수는 열려 있는 파일에 대 한 파일 설명자를 반환합니다.
경우 filename 또는 oflag 되는 NULL 포인터를 경우 oflag 또는 shflag 입니다 값의 올바른 범위에 잘못 된 매개 변수 처리기를의 설명에 따라 호출 되지 않습니다 매개 변수 유효성 검사.이 함수 실행을 계속 수 있으면-1을 반환 합니다. 설정 하 고 errno 는 다음 값 중 하나입니다.
EACCES
지정 된 경로의 디렉터리를 또는 읽기 전용 파일입니다 하지만 개방에 대 한 쓰기 작업을 시도 했습니다.EEXIST
_O_CREAT및 _O_EXCL 플래그 지정, 하지만 filename 이미 존재 합니다.EINVAL
잘못 된 oflag 또는 shflag 인수입니다.EMFILE
없음 자세한 파일 설명자 사용할 수 있습니다.ENOENT
파일 또는 경로 찾을 수 없습니다.
이러한 기능 및 다른 반환 코드에 대 한 자세한 내용은 참조 하십시오. _doserrno, errno, _sys_errlist, 및 _sys_nerr.
설명
_sopen 함수에서 지정한 파일을 엽니다 filename 및가 정의 된 파일 공유 읽기 또는 쓰기에 대 한 준비 oflag 및 shflag._wsopen와이드 문자 버전입니다 _sopen. filename 인수를 _wsopen 와이드 문자 문자열입니다._wsopen및 _sopen 그렇지을 동일 하 게 작동 합니다.
일반 텍스트 루틴 매핑
Tchar.h 루틴 |
_UNICODE 및 _mbcs가 정의 되지 않았습니다. |
_Mbcs가 정의 |
_Unicode가 정의 |
---|---|---|---|
_tsopen |
_sopen |
_sopen |
_wsopen |
정수 식 oflag Fcntl.h 파일에 정의 된 다음 매니페스트 상수 중 하나를 결합 하 여 형성 됩니다.두 개 이상의 상수 인수 형성 시기 oflag가 결합 되는 비트 OR 연산자 ( | ).
_O_APPEND
매 쓰기 작업 하기 전에 파일의 끝에 대 한 파일 포인터를 다시 설정합니다._O_BINARY
이진 (변환 되지 않은) 모드에서 파일을 엽니다.(참조 하십시오 통해 에 대 한 설명은 이진 모드에 대 한 합니다.)_O_CREAT
만들어 쓰기에 대 한 새 파일을 엽니다.파일이 지정 된 경우 적용 되지 않습니다 filename 있습니다.pmode 인수는 필요한 경우 _O_CREAT 지정 됩니다._O_CREAT| _O_SHORT_LIVED
임시 파일을 만들고 가능한 경우 디스크를 플러시하지 마십시오.pmode 인수는 필요한 경우 _O_CREAT 지정 됩니다._O_CREAT| _O_TEMPORARY
임시 파일을 만듭니다. 마지막 파일 설명자를 닫을 때 파일이 삭제 됩니다.pmode 인수는 필요한 경우 _O_CREAT 지정 됩니다._O_CREAT| _O_EXCL
지정 된 경우 오류 값을 반환 합니다. filename 있습니다.함께 사용 될 때만 적용 됩니다. _O_CREAT._O_NOINHERIT
공유 파일 설명자를 만들 수 없습니다._O_RANDOM
기본적으로 임의 액세스 디스크에서 지정합니다._O_RDONLY
읽기 전용 파일을 엽니다. 함께 지정할 수 없습니다. _O_RDWR 또는 _O_WRONLY._O_RDWR
읽고 쓸 파일을 엽니다. 함께 지정할 수 없습니다. _O_RDONLY 또는 _O_WRONLY._O_SEQUENTIAL
디스크에서 주로 순차적 액세스를 지정합니다._O_TEXT
(번역) 텍스트 모드에서 파일을 엽니다.(자세한 내용은 텍스트 및 이진 모드 파일 I/O 및 통해입니다.)_O_TRUNC
파일을 열고 길이 0으로 잘립니다. 파일에 쓰기 권한이 있어야 합니다.이 플래그를 지정할 수 없습니다 _O_RDONLY._O_TRUNC사용 _O_CREAT 기존 파일을 열거나 새 파일을 만듭니다.[!참고]
_O_TRUNC 플래그는 지정 된 파일의 내용을 삭제 합니다.
_O_WRONLY
만 쓰기 위한 파일을 엽니다. 함께 지정할 수 없습니다. _O_RDONLY 또는 _O_RDWR._O_U16TEXT
유니코드 utf-16 모드에서 파일을 엽니다._O_U8TEXT
유니코드 u t F-8 모드로 파일을 엽니다._O_WTEXT
유니코드 모드로 파일을 엽니다.
파일 액세스 모드를 지정 하려면 지정 해야 _O_RDONLY, _O_RDWR, 또는 _O_WRONLY.액세스 모드에 대 한 기본값이입니다.
경우 _sopen 을 호출 _O_WRONLY|_O_APPEND (추가 모드) 및 _O_WTEXT, _O_U16TEXT, 또는 _O_U8TEXT, 합니다 먼저 실행 파일 읽기 및 쓰기에 대 한 열에서 BOM을 읽고 쓰기 전용으로 다시 합니다.읽기 / 쓰기 실패에 대 한 파일을 열 경우만 작성을 위한 파일을 열고 유니코드 모드 설정에 대해 기본값을 사용 합니다.
인수가 shflag share.h에 정의 된 매니페스트 상수 다음 중 하나로 구성 되는 상수 식입니다.
_SH_DENYRW
읽기 및 파일에 쓰기 액세스를 거부합니다._SH_DENYWR
파일에 쓰기 액세스를 거부 합니다._SH_DENYRD
파일에 읽기 액세스를 거부합니다._SH_DENYNO
읽기 및 쓰기 액세스를 허용.
pmode 인수를 반드시 하나 지정 하는 _O_CREAT.파일이 존재 하지 않는 경우 pmode 처음으로 새 파일을 닫을 때 설정 된 파일의 권한 설정을 지정 합니다.그렇지 않으면 pmode 는 무시 됩니다.pmode매니페스트 상수 중 하나 또는 모두를 포함 하는 정수 식입니다 _S_IWRITE 및 _S_IREAD, sys\stat.h에서 정의 됩니다.두 상수가 지정 된 경우 비트 OR 연산자로 결합.의미를 pmode 는 다음과 같습니다.
_S_IWRITE
쓰기를 허용 합니다._S_IREAD
읽기를 허용 합니다._S_IREAD | _S_IWRITE
읽기 및 쓰기를 허용 합니다.
쓰기 권한을 지정 하지 않으면 파일이 읽기 전용입니다.Windows 운영 체제에서 모든 파일을 읽을 수 있습니다. 쓰기 전용 권한을 부여할 수 없습니다.따라서 모드 _S_IWRITE 및 _S_IREAD | _S_IWRITE 은 동일 합니다.
_sopen현재 파일 권한 마스크에 적용 됩니다. pmode 의 사용 권한을 설정 하기 전에 (볼 _umask).
요구 사항
루틴 |
필수 헤더 |
선택적 헤더 |
---|---|---|
_sopen |
<io.h> |
<fcntl.h>, <sys/types.h>, <sys/stat.h>, <share.h> |
_wsopen |
<io.h> 또는 <wchar.h> |
<fcntl.h>, <sys/types.h>, <sys/stat.h>, <share.h> |
더 많은 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.
예제
예제를 보려면 _locking.
해당 .NET Framework 항목
해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.