Directory和DirectoryInfo類提供用于創(chuàng)建、移動(dòng)以及遍歷目錄和子目錄的常用方法。由于Directory類的所有方法都是靜態(tài)的,因此不用創(chuàng)建這個(gè)類的實(shí)例就可以調(diào)用這些方法。DiretoryInfo類只包含實(shí)例方法。Directory類的靜態(tài)方法對(duì)所有的方法執(zhí)行安全檢查。如果要多次重用某個(gè)對(duì)象,可考慮改用Directorylnfo的相應(yīng)實(shí)例方法,因?yàn)榘踩珯z查并不總是必需的。
下例演示了如何使用Directorylnfo類來(lái)創(chuàng)建一個(gè)目錄內(nèi)的某種列表。
【實(shí)例7-6】? 使用Directorylnfo類來(lái)創(chuàng)建一個(gè)目錄內(nèi)的某種列表。
- using?System; ?
- using?System.IO; ?
- class ?DirectoryLister ?
- { ?
- ???? public ? static ? void ?Main(string[]?args) ?
- ????{ ?
- ????????DirectoryInfo?dir= new ?DirectoryInfo( "." ); ?
- ????????foreach(FileInfo?f?in?dir.GetFiles( "*.cs" )) ?
- ????????{ ?
- ???????????string?name=f.FullName; ?
- ??????????? long ?size=f.Length; ?
- ???????????DateTime?creationTime=f.CreationTime; ?
- ???????????Console.WriteLine( "{0,-12:NO}?{1,-20:g}?{2}" ,size,creationTime,name); ?
- ????????} ?
- ????} ?
- }?
在上面的示例中,Dimctorylnfo對(duì)象是當(dāng)前目錄,用"."表示。代碼列出了當(dāng)前目錄下擴(kuò)展名為.cs的所有文件名,以及文件大小和創(chuàng)建時(shí)間。
假定在驅(qū)動(dòng)器C的\Bin子目錄下存在擴(kuò)展名為.cs的文件,則代碼的輸出如下。
- 9537 / 20 / 2006 ? 10 : 42 ?AH?c:\B1n\paramatt.cs ?
- 6647 / 27 / 2006 ? 3 : 11 ?PM?c:\Bin\tst.cs ?
- 4038 / 8 / 2006 ?IO: 25 ?AM?c:\Bin\dirlist.cs?
如果想要另一個(gè)目錄如C:\下的文件列表,記住要使用反斜杠(\)這個(gè)轉(zhuǎn)義字符。
- "c:\\" ?
或在C#中使用一個(gè)@引用字符串:
- @ "c:\" ?
若要以跨平臺(tái)的方式處理目錄字符串,則應(yīng)使用Path類。Path類的成員可以快速、方便地完成一些常見(jiàn)操作,例如確定文件擴(kuò)展名是否是路徑的一部分,以及將兩個(gè)字符串組合成一個(gè)路徑名等。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
