當從配置檔案中讀取路徑時,需要判斷檔案內的路徑名是否合法,如果不加以判斷,當你程式設計的軟體在其他電腦上開啟後,讀取的路徑不合法,程式執行就會出問題。
當從配置檔案中讀取出路徑後,可以呼叫getfileattributes()函式來獲取檔案的屬性,然後通過判斷檔案的屬性是否是「無效屬性」,是則認為是不合法路徑,不是則認為是合法路徑。
getfileattributes(__in lpctstr lpfilename)
引數
lpfilename檔案或目錄的名字,對於ansi版本,名字不能大於max_path(260)。
返回值
如果函式成功,返回值包含檔案或目錄的屬性(屬性列表見備註)。如果函式失敗,返回值是invalid_file_attributes。
//獲取目錄/檔案的屬性
cstring strrecordpath;
strrecordpath =_t(
"c:\\users\\microsoft\\desktop\\");
pathattributes =
getfileattributes
(strrecordpath)
;//判斷路徑下檔案是否合法
if(pathattributes == invalid_file_attributes)
//若是無效屬性
使用者也可以通過其他返回值來判斷檔案/目錄的屬性。值意義
file_attribute_archive
right-aligned存檔檔案(或目錄)。
file_attribute_compressed
壓縮檔案(或目錄)。用於檔案時:該檔案中所有的記錄都是經過壓縮的;用於目錄時:在該目錄下新建檔案或子目錄時會預設進行壓縮。
file_attribute_device
未使用,保留
file_attribute_directory
目錄
file_attribute_encrypted
加密檔案(或目錄)。用於檔案時:該檔案中所有的記錄都是經過加密的,包括讀寫操作;用於目錄時:在該目錄下新建檔案或子目錄時會預設進行加密。
file_attribute_hidden
隱藏檔案(或目錄)
file_attribute_normal
檔案(或目錄)正常
file_attribute_not_content_indexed
標示乙個檔案不可被內容索引服務索引
file_attribute_offline
離線檔案,該檔案中的內容無法直接使用
file_attribute_readonly
唯讀檔案(或目錄)
file_attribute_reparse_point
超連結或快捷方式
file_attribute_sparse_file
稀疏檔案
file_attribute_system
系統檔案(或目錄)
file_attribute_temporary
臨時檔案
file_attribute_virtual
系統檔案
判斷操作是否合法A
time limit 1 sec memory limit 128 mb submit 44 solved 14 submit status web board 假設以i和o分別表示進棧和出棧操作,棧的初態和終態均為空,進棧和出棧的操作序列可表示為僅由i和o組成的序列。順序棧的定義為 typedef...
判斷輸入是否合法
一 判斷輸入是否為數字 通常使用方法1和3,方法2和4無法保證一定能判斷正確。1 函式isdigit 表頭檔案 include 定義函式 int isdigit char c 函式說明 檢查引數c是否為阿拉伯數字0到9。返回值若引數c為阿拉伯數字,則返回true,否則返回null 0 2 當使用ci...
MFC如何開啟檔案路徑
m filedir szfolder 選擇的資料夾路徑 2.查詢路徑下的檔案 cfilefind finder cstring strwildcard m filedir 將傳入的引數賦於變數 strwildcard strwildcard t 構造檔案的全路徑,類似於 c aa bool bwor...