一直對qt的isfile、isdir、exists這幾個方法感到混亂,不知道到底用哪個,網上搜了下資料,也是用這幾個方法
但是都沒有對其深究,經過測試發現會存在問題,先看看下面的測試**
可以看到,容易讓人感到混亂的是exists方法,這個方法是通用的判斷方法,可以看成是這樣的表示式
exists() == (isfile() || isdir())
這也是我想說明的問題,網上一些博文中提出的判斷檔案或資料夾用exists方法是不嚴謹的
比如你的本意是判斷檔案是否存在,但檔案不存在,而恰巧有個同名的資料夾,那麼exists也會返回true。資料夾也是同理
根據上面的**作出的一點總結
用qfileinfo::isfile()方法
用qfileinfo::isdir()方法
用qdir::exists()方法
用qfileinfo::exists()方法
用qfile::exists()方法
Qt 正確判斷檔案 資料夾是否存在的方法
可以看到,容易讓人感到混亂的是exists方法,這個方法是通用的判斷方法,可以看成是這樣的表示式 exists isfile isdir 這也是我想說明的問題,網上一些博文中提出的判斷檔案或資料夾用exists方法是不嚴謹的 比如你的本意是判斷檔案是否存在,但檔案不存在,而恰巧有個同名的資料夾,那麼...
判斷資料夾是否存在
access函式判斷資料夾或者檔案是否存在 函式原型 int access const char filename,int mode 所屬標頭檔案 io.h filename 可以填寫資料夾路徑或者檔案路徑 mode 0 f ok 只判斷是否存在 2 r ok 判斷寫入許可權 4 w ok 判斷讀取...
Qt 判斷檔案或資料夾是否存在及建立資料夾
1.判斷資料夾是不是存在 引數說明 qstring fullpath 資料夾全路徑 方法1 bool isdirexist qstring fullpath return false 方法2 bool isdirexist qstring fullpath return false 2.判斷檔案是不...