C 中檔案及資料夾的遍歷

2021-07-24 05:36:17 字數 2411 閱讀 9973

操作檔案常用的類有:

file------實用類,提供許多靜態方法,用於移動、刪除、和複製檔案。

directory------實用類,提供許多靜態方法,用於移動、刪除和複製目錄。

path------ 實用類,用於處理路徑名稱。

fileinfo------表示磁碟上的物理檔案,具有可以處理此檔案的方法,要完成對檔案的讀寫工作,就必須建立stream對像。

directoryinfo------表示磁碟上的物理目錄,具有可以處理此目錄的方法

下面對這些類分別作介紹:

1.file和directory類

作為實用類,file和directory類都提供了許多方法,用於處理檔案系統以及其中的檔案和目錄。這些是靜態方法,涉及移動檔案、查詢和更新屬性並建立filestream物件。

file類一些最常用的靜態方法:

copy()------將檔案複製到規定的位置

create()------在規定的位置上建立檔案

delete()------刪除檔案

open()-------在規定的路徑上返回filestream對像

move()------將規定的檔案移動到新位置,可以在新位置給檔案規定不同的名字

directory類的一些常用的靜態方法

createdirectory()------建立具有規定路徑的目錄

delete()------刪除規定的目錄以及其中的所有檔案

getdirectories()------返回表示當前目錄之下的目錄的directory對像的陣列

getfiles()-------返回在當前目錄中的file對像的陣列

move()------將規定的目錄移動到新位置。可以在新位置為資料夾規定乙個新名稱

例1:列出磁碟機

string

drives 

=directory.getlogicaldrives();

foreach

(string

drive 

indrives)

例2:列出子資料夾

string

dirs 

=directory.getdirectories(windir);

foreach

(string

dir 

indirs)

例3:列出檔案

string

files

=directory.getfiles(windir);

foreach

(string

i in

files)

例4:遞迴搜尋與搜尋字串相匹配的檔案

void

dirsearch(

string

sdir,

string

searchpattern) 

dirsearch(d);}}

catch

(system.exception excpt) }

2.fileinfo 類

fileinfo類不像file類,它沒有靜態方法,僅可用於例項化的對像。fileinfo對像表示在磁碟或網路位置的檔案,注意它不是流,為了讀寫檔案,必須建立stream對像。

fileinfo類提供了下面的關於基礎性的檔案的屬性,這些屬性可能用來更新檔案。

attributes-----獲取或設定當前檔案的屬性

creationtime------獲取當前檔案的建立日期和時間

directoryname------獲取檔案目錄的路徑

exists------判斷是否存在檔案

fullname------檢索檔案的完整路徑

length------獲取檔案的容量

name------僅僅返回檔案的名稱,而不是完整的檔案位置路徑、

例:檢視檔案資訊

fileinfo fileprops  

=new

fileinfo(windir +"

/notepad.exe");

addlistitem(

"file name = "+

fileprops.fullname);

addlistitem(

"creation time = "+

fileprops.creationtime);

addlistitem(

"last access time = "+

fileprops.lastaccesstime);

addlistitem(

"last write time = "+

fileprops.lastwritetime);

addlistitem(

"size = "+

fileprops.length);

fileprops 

=null; 

遍歷資料夾中檔案

import os 方法1 for root,dirs,files in os.walk path print root 根目錄 print dirs 目錄下資料夾 print files 目錄下檔案 方法2 for files in os.listdir path print files 方法3 ...

C 遍歷資料夾及檔案

背景 想自己實現乙個網盤系統,於是需要用到遍歷檔案 夾 操作。1.如何獲取指定目錄包含的檔案和子目錄 1 directoryinfo.getfiles 獲取目錄中 不包含子目錄 的檔案,返回型別為fileinfo,支援萬用字元查詢 2 directoryinfo.getdirectories 獲取目...

c 遍歷資料夾深度 C 遍歷資料夾獲取資料夾大小

c 遍歷資料夾獲取資料夾大小 都需要引入system.io這個命名空間 第一種方法 public static long getdirectorylength string dirpath 判斷給定的路徑是否存在,如果不存在則退出 if directory.exists dirpath return...