[c++] 파일 및 디렉토리 권한 검사하기

파일이나 디렉토리에 대한 권한을 확인하여 특정 작업을 수행하려면 C++의 내장 함수를 사용할 수 있습니다. 여기에 간단한 예제 코드가 있습니다.

먼저, stat 함수를 사용하여 파일의 권한을 검사합니다.

#include <iostream>
#include <sys/stat.h>

int main() {
    struct stat fileStat;
    if (stat("file.txt", &fileStat) == 0) {
        // 파일 권한에 따른 처리
        if (fileStat.st_mode & S_IRUSR) {
            std::cout << "해당 파일은 소유자에 의해 읽을 수 있습니다." << std::endl;
        }
        if (fileStat.st_mode & S_IWUSR) {
            std::cout << "해당 파일은 소유자에 의해 쓰일 수 있습니다." << std::endl;
        }
        if (fileStat.st_mode & S_IXUSR) {
            std::cout << "해당 파일은 소유자에 의해 실행될 수 있습니다." << std::endl;
        }
        // 그 외 권한에 따른 처리 내용 추가
    } else {
        std::cerr << "파일 정보를 가져오는 데 실패했습니다." << std::endl;
    }
    return 0;
}

위의 코드는 stat 함수를 사용하여 “file.txt” 파일의 권한을 검사합니다. 이 후, st_mode 필드를 사용하여 각각의 권한을 확인하고 관련된 메시지를 출력합니다.

파일이나 디렉토리의 권한을 확인하는 데에 있어서 stat 함수 외에도, lstat, fstat, access 함수 등도 활용할 수 있습니다.

위의 코드를 실행하기 전에, sys/stat.h 헤더 파일을 포함하여야 합니다.

이 코드를 통해 파일 및 디렉토리의 권한을 검사하고 원하는 작업을 수행할 수 있습니다.

더 자세한 내용은 C++ 파일 시스템 라이브러리 참조 문서를 참고하세요.