版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
軟件開發(fā)基礎(chǔ)(.NET)主講:鄺穎杰
電郵:kuangyingjie@163.com0、本章掌握內(nèi)容系統(tǒng)環(huán)境相關(guān)類的使用目錄的操作幾個(gè)對(duì)話框的使用文件的創(chuàng)建、讀寫目錄與文件管理系統(tǒng)環(huán)境相關(guān)類目錄管理文件管理文件的讀寫FileSystemWatcher組件1、系統(tǒng)環(huán)境相關(guān)類.NET框架下,有與系統(tǒng)環(huán)境相關(guān)類。1.Environment類該類除了提供當(dāng)前環(huán)境和操作系統(tǒng)平臺(tái)相關(guān)的信息外,還提供了獲取本地邏輯驅(qū)動(dòng)器和特殊文件夾的方法。2.DriveInfo類提供了本地驅(qū)動(dòng)器相關(guān)的詳細(xì)信息。1)Environment類1.常用的屬性和方法CurrentDirectory屬性O(shè)SVersion屬性NewLine屬性Version屬性GetLogicalDrives方法GetFolderPath方法2)DriveInfo類使用DriveInfo可以確定當(dāng)前可用的驅(qū)動(dòng)器以及這些驅(qū)動(dòng)器的類型,還可以通過(guò)查詢來(lái)確定驅(qū)動(dòng)器的容量和剩余空間。DriveInfo[]allDrives=DriveInfo.GetDrives();foreach(DriveInfodinallDrives){
Console.WriteLine("Drive{0}",d.Name);
Console.WriteLine("文件類型:{0}",d.DriveType);if(d.IsReady==true){
Console.WriteLine("卷標(biāo):{0}",d.VolumeLabel);
Console.WriteLine("文件系統(tǒng):{0}",d.DriveFormat);
Console.WriteLine("當(dāng)前用戶可用空間:{0}bytes",d.AvailableFreeSpace);
Console.WriteLine("總可用空間:{0}bytes",d.TotalFreeSpace);
Console.WriteLine("驅(qū)動(dòng)器總?cè)萘?{0}bytes",d.TotalSize);}}2、目錄管理在System.IO命名空間中,.NET框架提供了3種對(duì)目錄進(jìn)行管理的類,分別是Directory類DirectoryInfo類Path類1.Directory類和DirectoryInfo類區(qū)別:Directory類(只提供靜態(tài)方法)DirectoryInfo類(需要實(shí)例化才能使用)DirectoryInfo類的構(gòu)造函數(shù)形式如下:
publicDirectoryInfo(stringpath);
參數(shù)path表示目錄所在的路徑。例如:
DirectoryInfo
dirInfo=newDirectoryInfo(@"e:\temp");注意:(1)path是合法的路徑。
(2)用System.Environment.SpecialFolder下的枚舉可以獲取特殊文件夾路徑。7.2目錄管理2.DirectoryInfo類的主要屬性ExistsFullNameParentCreationTime3.Directory類提供的靜態(tài)方法CreateDirectoryDeleteMoveExistsGetCurrentDirectory2)Path類1.Path類用于對(duì)包含文件或目錄路徑信息的String實(shí)例執(zhí)行操作。2.常用方法:GetDirectoryName方法GetExtension方法GetFileName方法GetFileNameWithoutExtension方法GetFullPath方法1.創(chuàng)建目錄Directory類的CreateDirectory方法用于創(chuàng)建指定路徑中的所有目錄。publicstaticDirectoryInfo
CreateDirectory(stringpath)其中參數(shù)path為要?jiǎng)?chuàng)建的目錄路徑。舉例:Directory.CreateDirectory("c:\\test");Directory.CreateDirectory("c:\\test\\t1\\t2");3)目錄的創(chuàng)建、刪除和移動(dòng)2.刪除目錄Directory類的Delete方法用于刪除指定的目錄,常用的方法原型為publicstaticvoidDelete(stringpath,boolrecursive)其中:path參數(shù)不區(qū)分大小寫,可以是相對(duì)于當(dāng)前工作目錄的相對(duì)路徑,也可以是絕對(duì)路徑。recursive是一個(gè)布爾值,如果要移除path中的目錄(包括所有子目錄和文件),則為true;否則為false。3)目錄的創(chuàng)建、刪除和移動(dòng)3.移動(dòng)目錄Directory類的Move方法能夠重命名或移動(dòng)目錄。方法原型為publicstaticvoidMove(stringsourceDirName,stringdestDirName)其中,sourceDirName為要移動(dòng)的文件或目錄的路徑;destDirName為新位置的目標(biāo)路徑。注意:
destDirName參數(shù)指定的目標(biāo)路徑應(yīng)為新目錄。3)目錄的創(chuàng)建、刪除和移動(dòng)FolderBrowserDialog對(duì)話框以樹形控件的形式將指定路徑的文件夾及其子文件夾顯示出來(lái),供用戶瀏覽、創(chuàng)建或選擇。調(diào)用FolderBrowserDialog的ShowDialog方法,可以打開對(duì)話框,如果用戶在對(duì)話框中單擊【確定】按鈕,則對(duì)話框返回結(jié)果為DialogResult.OK,否則為DialogResult.Cancel。4)FolderBrowserDialog對(duì)話框7.2.4FolderBrowserDialog控件3.FolderBrowserDialog控件的主要屬性:屬性名含義Description獲取或設(shè)置對(duì)話框中在樹視圖控件上顯示的說(shuō)明文本RootFolder獲取或設(shè)置從其開始瀏覽的根文件夾SelectedPath獲取或設(shè)置用戶選定的路徑3、文件管理
System.IO命名空間中文件操作類:(1)File(2)FileInfo
相同點(diǎn):都能完成對(duì)文件的復(fù)制、移動(dòng)、重命名、創(chuàng)建、打開、刪除和追加到文件操作。
不同點(diǎn):FileInfo類提供實(shí)例化后的屬性、方法
File只提供靜態(tài)方法用法與Directory和DirectoryInfo相似。1)文件復(fù)制、刪除與移動(dòng)File類
(1)判斷文件是否存在調(diào)用File類的Exist方法可以判斷是否存在指定的文件。
(2)復(fù)制文件
Copy(sourceFileName,destFileName,booloverwrite)(2)刪除文件
Delete(stringpath)(3)移動(dòng)文件
Move(sourceFileName,destFileName)
注意:Move方法不提供創(chuàng)建目錄的功能,要確保存在目標(biāo)文件目錄。2)文件屬性1.設(shè)置或獲取屬性
(1)對(duì)File類:用SetAttributes方法,GetAttributes方法設(shè)置、獲取。
(2)對(duì)FileInfo類:用Attributes屬性設(shè)置、獲取。
(3)注意:
FileAttributes的每個(gè)枚舉值代表目錄或者文件的一個(gè)屬性,各個(gè)枚舉值是按照2的冪排列的,即依次為20,21,22,23
,……2.可以利用“與”、“或”操作設(shè)置或獲取單個(gè)屬性。2)文件屬性與設(shè)置2.判斷某個(gè)路徑是目錄還是文件下面的代碼演示了如何判斷某個(gè)路徑是目錄還是文件:if((File.GetAttributes(path)&FileAttributes.Directory)==FileAttributes.Directory){Console.WriteLine("“{0}”是目錄",path);}else{Console.WriteLine("“{0}”是文件",path);}4)OpenFileDialog控件和SaveFileDialog1.功能:用于顯示用戶打開文件的對(duì)話框。2.常用屬性:屬性名說(shuō)明ShowReadOnly確定是否在對(duì)話框中顯示只讀復(fù)選框ReadOnlyChecked指示是否選中只讀復(fù)選框MultiSelect指示對(duì)話框是否允許選擇多個(gè)文件FileName獲取或設(shè)置一個(gè)包含在文件對(duì)話框中選定的文件名的字符串Filter獲取或設(shè)置當(dāng)前文件名篩選器字符串3.常用方法:ShowDialog()4)OpenFileDialog控件和SaveFileDialog1.SaveFileDialog用于顯示保存文件對(duì)話框,提示用戶選擇文件的保存位置。2.調(diào)用SaveFileDialog的ShowDialog方法,將打開【另存為】對(duì)話框,如果用戶在對(duì)話框中單擊【保存】按鈕,則保存該文件,并返回DialogResult.OK,否則返回DialogResult.Cancel?!纠?】利用FolderBrowerDialog、OpenFileDialog和SaveFileDialog對(duì)話框,設(shè)計(jì)一個(gè)Windows應(yīng)用程序,實(shí)現(xiàn)將文件從一個(gè)目錄復(fù)制到另一個(gè)目錄的功能。對(duì)話框控件綜合舉例4、文件的讀寫在System.IO命名空間中,提供了多種類用于進(jìn)行數(shù)據(jù)文件和數(shù)據(jù)流的讀寫操作。主要有:
1.文件編碼,提供了多種編碼。
2.文本文件的讀寫。
3.二進(jìn)制文件的讀寫。1.文件編碼常見的文件編碼方式有ASCII編碼、Unicode編碼、UTF8編碼和ANSI編碼。2.在System.Text命名空間中,有一個(gè)Encoding類,用于表示字符編碼。對(duì)文件進(jìn)行操作時(shí),常用的編碼方式有Encoding.Default
表示操作系統(tǒng)的當(dāng)前ANSI編碼Encoding.Unicode Unicode編碼Encoding.UTF8 UTF8編碼1)文件的編碼2)文本文件的讀寫File類提供了非常方便的讀寫文本文件的方法。1.ReadAllText方法和AppendAllText方法
ReadAllText方法打開一個(gè)文件,讀取文件的每一行,將每一行添加為字符串的一個(gè)元素。然后關(guān)閉文件。常用原型為
publicstaticstringReadAllText(stringpath,Encodingencoding)AppendAllText方法用于將指定的字符串追加到文件中,如果文件不存在則自動(dòng)創(chuàng)建該文件,常用原型為
publicstaticvoidAppendAllText(stringpath,stringcontents,Encodingencoding)2)文本文件的讀寫2、ReadAllLines方法和WriteAllLines方法ReadAllLines方法打開一個(gè)文本文件,將文件的所有行都讀入一個(gè)字符串?dāng)?shù)組,然后關(guān)閉該文件。WriteAllLines方法創(chuàng)建一個(gè)新文件,在其中寫入指定的字符串?dāng)?shù)組,然后關(guān)閉文件。如果目標(biāo)文件已存在,則覆蓋該文件2)文本文件的讀寫3.StreamReader類和StreamWriter類流是字節(jié)序列的抽象概念。流也是進(jìn)行數(shù)據(jù)讀取操作的基本對(duì)象,流提供了連續(xù)的字節(jié)流存儲(chǔ)空間。流有如下幾種操作。讀?。簭牧髦凶x取數(shù)據(jù)到變量中。寫入:把變量中的數(shù)據(jù)寫入到流中。定位:重新設(shè)置流的當(dāng)前位置,以便隨機(jī)讀寫2)文本
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 微課程課程設(shè)計(jì)方案
- 工程索道課程設(shè)計(jì)
- 夾具工裝課程設(shè)計(jì)
- 化工離心泵的課程設(shè)計(jì)
- 計(jì)劃合同部工作職責(zé)
- 北京市房屋租賃合同的簽署細(xì)節(jié)
- 2024年度展覽館消毒清潔服務(wù)合同2篇
- 2024版勞動(dòng)合同with職位描述、薪資待遇等條款3篇
- 2024年度財(cái)務(wù)顧問(wèn)與保險(xiǎn)公司合作合同3篇
- 2024版影視劇制作與版權(quán)轉(zhuǎn)讓合同5篇
- 廣東省廣州市白云區(qū)2022-2023學(xué)年九年級(jí)上學(xué)期期末語(yǔ)文試題
- 劇本-進(jìn)入黑夜的漫長(zhǎng)旅程
- DB43-T 958.3-2023 實(shí)驗(yàn)用小型豬 第3部分:配合飼料
- 化肥購(gòu)銷合同范本正規(guī)范本(通用版)
- 健康管理專業(yè)職業(yè)生涯規(guī)劃書
- 外墻巖棉板施工方案
- 吊裝葫蘆施工方案
- 自動(dòng)化設(shè)備調(diào)試規(guī)范
- 石瘕的護(hù)理查房
- 北師大版三年級(jí)上冊(cè)數(shù)學(xué)??紤?yīng)用題含答案解析
- 社區(qū)食堂投投標(biāo)方案(技術(shù)標(biāo))
評(píng)論
0/150
提交評(píng)論