c++判斷文件是否存在的方法是什么

c++
小億
107
2024-06-03 20:02:22

在C++中,可以使用以下方法來(lái)判斷文件是否存在:

  1. 使用 std::ifstream 類(lèi)的 open() 函數(shù)來(lái)嘗試打開(kāi)文件,如果文件打開(kāi)成功,則說(shuō)明文件存在,否則文件不存在。
#include <fstream>

bool fileExists(const std::string &filename) {
    std::ifstream file(filename);
    return file.good();
}

int main() {
    std::string filename = "example.txt";
    if(fileExists(filename)) {
        std::cout << "File exists" << std::endl;
    } else {
        std::cout << "File does not exist" << std::endl;
    }
    
    return 0;
}
  1. 使用系統(tǒng)調(diào)用 access() 函數(shù)來(lái)檢查文件是否存在。
#include <unistd.h>

bool fileExists(const std::string &filename) {
    return access(filename.c_str(), F_OK) != -1;
}

int main() {
    std::string filename = "example.txt";
    if(fileExists(filename)) {
        std::cout << "File exists" << std::endl;
    } else {
        std::cout << "File does not exist" << std::endl;
    }
    
    return 0;
}

這兩種方法都可以用來(lái)判斷文件是否存在,具體使用哪種方法取決于個(gè)人偏好和需求。

0