有時候需要根據路徑是目錄還是檔案執行不同的操作,那麼在c/c++中如何判斷某個路徑是目錄還是檔案呢?
可以利用stat函式和結構體
stat的函式宣告如下
int _stat(
const char *path,
struct _stat *buffer
);
引數:path——檔案或者資料夾的路徑
buffer——獲取的資訊儲存在記憶體中
返回值:
正確——返回0
錯誤——返回-1,具體錯誤碼儲存在errno中
_stat結構體是檔案(夾)資訊的結構體,定義如下:
struct stat ;
從上面的解釋可以得到如下的例子
#include struct stat s;
char* path = "myfile.txt";
if (stat(path,&s)==0){
if(s.st_mode & s_ifdir){
std::cout<<"it's a directory"<
刪除某一路徑下所有檔案
想刪除某一路徑之下所有檔案 刪除檔案,insus.net 寫了2個方法,名稱一樣,過載而已。原理簡單,即是迴圈指定路徑下所有目錄和子目錄來進行刪除檔案。過載的方法,帶多乙個引數。是想刪除幾天前的檔案,根擾檔案的建立日期來判斷。高亮的一行,insus.net是想這個資料不管使用這個方法,輸入乙個正數或...
刪除某一路徑下所有檔案
想刪除某一路徑之下所有檔案 刪除檔案,insus.net 寫了2個方法,名稱一樣,過載而已。原理簡單,即是迴圈指定路徑下所有目錄和子目錄來進行刪除檔案。過載的方法,帶多乙個引數。是想刪除幾天前的檔案,根擾檔案的建立日期來判斷。高亮的一行,insus.net是想這個資料不管使用這個方法,輸入乙個正數或...
計算某一路徑下的所有目錄或是檔案數量
計算某一路徑下的所有目錄或是檔案數量,可以參考下面 示例 不管是計算目錄或理檔案,2個方法均帶2個引數,前者是傳入的是物理路徑,第二個傳的是布林值的引數,即是說可以計算是否包含子目錄。目錄 public static int directorycount string physicalpath,bo...