關於C 中如何判斷檔案,目錄存在的若干方法

2021-09-07 04:57:17 字數 1743 閱讀 1162

在我們平時的程式設計時,經常需要判斷檔案或者目錄是否存在,相對來說判斷檔案的存在性比較簡單,目錄則比較複雜。

下面就詳細的介紹幾種方法。

首先關於判斷檔案的存在性:

一、ifstream

在c++中,可以利用ifstream檔案輸入流,當我們直接使用ifstream來建立檔案輸入流的時候,如果檔案不存在則流建立失敗。

ifstream fin("

hello.txt");

if (!fin)

三、_access

當然c中還有一種方式是直接呼叫c的函式庫。

就是函式 int _access(const char* path,int mode);

這個函式的功能十分強大。

可以看看msdn的詳細介紹

這三種方式算是判斷檔案存在比較簡單快捷的方法了。

現在來說說判斷目錄存在的一些方法。

一、findfirstfile

在c++中可以呼叫系統的一些函式,但這種方法稍微顯得複雜一些。

二、_stat()

現在介紹乙個輕量級的方法

在windows中可以使用_stat() 函式。

宣告:int _stat(const char* path, struct _stat* buffer);

這個函式使用起來非常方便,如下:

struct

_stat filestat;

if ((_stat(dir.c_str(), &filestat) == 0) && (filestat.st_mode &_s_ifdir))

_s_ifdir 是乙個標誌位,如果是目錄的話,該位就會被系統設定。

在linux底下也有相對應的函式stat();

使用方法基本相同:

struct

stat filestat;

if ((stat(dir.c_str(), &filestat) == 0) &&s_isdir(filestat.st_mode))

唯一不同的地方我使用了乙個macro, s_isdir來判斷檔案是否存在,原理實際都一樣的。

上面就是自己使用過的幾種判斷檔案和目錄存在性的一些經驗了,希望對大家有所幫助。

關於C 中如何判斷檔案,目錄存在的若干方法

出處 在我們平時的程式設計時,經常需要判斷檔案或者目錄是否存在,相對來說判斷檔案的存在性比較簡單,目錄則比較複雜。下面就詳細的介紹幾種方法。首先關於判斷檔案的存在性 一 ifstream 在c 中,可以利用ifstream檔案輸入流,當我們直接使用ifstream來建立檔案輸入流的時候,如果檔案不存...

關於C 中如何判斷檔案,目錄存在的若干方法

出處 在我們平時的程式設計時,經常需要判斷檔案或者目錄是否存在,相對來說判斷檔案的存在性比較簡單,目錄則比較複雜。下面就詳細的介紹幾種方法。首先關於判斷檔案的存在性 一 ifstream 在c 中,可以利用ifstream檔案輸入流,當我們直接使用ifstream來建立檔案輸入流的時候,如果檔案不存...

關於C 中如何判斷檔案,目錄存在的若干方法

下面就詳細的介紹幾種方法。首先關於判斷檔案的存在性 一 ifstream 在c 中,可以利用ifstream檔案輸入流,當我們直接使用ifstream來建立檔案輸入流的時候,如果檔案不存在則流建立失敗。ifstream fin hello.txt if fin 三 access 當然c中還有一種方式...