public static bool isfilesequal(string filename1, string filename2)}}
問題5:如何獲取指定目錄的基本資訊;
解決方案:可以使用directoryinfo類的相關屬性和方法:
directoryinfo.exists:獲取指定目錄是否存在;
directoryinfo.name:獲取目錄的名稱;
directoryinfo.fullname:獲取目錄的全限定名稱(完整路徑);
directoryinfo.attributes:獲取或設定指定目錄的屬性,返回型別為fileattributes列舉,可以是多個值的組合;
directoryinfo.creationtime、fileinfo.lastaccesstime、fileinfo.lastwritetime:分別用於獲取目錄的建立時間、訪問時間、修改時間;
directoryinfo.parent:獲取目錄的上級目錄,返回型別為directoryinfo;
directoryinfo.root:獲取目錄的根目錄,返回型別為directoryinfo;
問題6:如何獲取指定目錄包含的檔案和子目錄;
解決方案:
directoryinfo.getfiles():獲取目錄中(不包含子目錄)的檔案,返回型別為fileinfo,支援萬用字元查詢;
directoryinfo.getdirectories():獲取目錄(不包含子目錄)的子目錄,
返回型別為directoryinfo,支援萬用字元查詢;
directoryinfo. getfilesysteminfos():獲取指定目錄下(不包含子目錄)的檔案和子目錄,
返回型別為filesysteminfo,支援萬用字元查詢;
問題7:如何獲得指定目錄的大小;
解決方案:
檢查目錄內的所有檔案,利用fileinfo.length屬性獲取每個檔案的大小,然後進行合計,然後使用遞迴演算法處理所有的子目錄的檔案,參考下面**:
///
/// 計算乙個目錄的大小
///
/// 指定目錄
/// 是否包含子目錄
///
private long calculatedirsize(directoryinfo di, bool includesubdir)
// 檢查所有子目錄,如果includesubdir引數為true
if (includesubdir)
}return totalsize;
}問題8:如何使用萬用字元搜尋指定目錄內的所有檔案;
解決方案:
使用directoryinfo.getfiles方法的過載版本,它可以接受乙個過濾表示式,返回fileinfo陣列,另外它的引數還可以指定是否對子目錄進行查詢。如:
dir.getfiles("*.txt", searchoption.alldirectories);
問題9:如何複製、移動、重新命名、刪除檔案和目錄;
解決方案:使用fileinfo和directoryinfo類。
下面是fileinfo類的相關方法:
fileinfo.copyto:將現有檔案複製到新檔案,其過載版本還允許覆蓋已存在檔案;
fileinfo.moveto:將指定檔案移到新位置,並提供指定新檔名的選項,所以可以用來重新命名檔案(而不改變位置); fileinfo.delete:永久刪除檔案,如果檔案不存在,則不執行任何操作;
fileinfo.replace:使用當前fileinfo物件對應檔案的內容替換目標檔案,而且指定另乙個檔名作為被替換檔案的備份,微軟考慮實在周到。
下面是directoryinfo類的相關方法:
directoryinfo.create:建立指定目錄,如果指定路徑中有多級目錄不存在,該方法會一一建立;
directoryinfo.createsubdirectory:建立當前物件對應的目錄的子目錄;
directoryinfo.moveto:將目錄(及其包含的內容)移動至乙個新的目錄,也可用來重新命名目錄;
directoryinfo.delete:刪除目錄(如果它存在的話)。如果要刪除乙個包含子目錄的目錄,要使用它的過載版本,以指定遞迴刪除。
注意到了沒有?directoryinfo類少了乙個copyto方法,不過我們可以通過遞迴來實現這個功能:
///
/// 複製目錄到目標目錄
///
/// 源目錄
/// 目標目錄
出處:leonardleonard
常見檔案 目錄 路徑操作函式
bool winapi deletefile in lpctstr lpfilename 刪除乙個檔案 int shfileoperation lpshfileopstruct lpfileop 刪除很多檔案 bool winapi removedirectory in lpctstr lppath...
Linux系統IO目錄檔案操作
linux目錄檔案 維護著乙個鍊錶的資料結構,目錄檔案的結構和單向鍊錶的節點的類似,可利用鍊錶的遍歷方法來實現目錄檔案遍歷.但是直接使用目錄流物件不會得到乙個鍊錶的節點 因為是流物件 需要配合readdir指令來移動流的當前位置指標,並獲得相應的鍊錶節點 目錄下的檔案的資訊 include incl...
VC檔案目錄常見操作
1.判斷乙個目錄是否存在 include windows.h 引數 strpath 目錄的完整路徑,注意不要以 結尾 返回值 如果為目錄,返回真,否則返回假 bool folderexist cstring strpath findclose hfind return rvalue 2.判斷檔案或目...