版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
簡易記事本任務(wù)1:文件讀取實現(xiàn)任務(wù)2:文件保存實現(xiàn)任務(wù)3:編輯、字體功能實現(xiàn)項目七簡易記事本模仿了windows附件“記事本”的部分功能,通過簡易記事本可以實現(xiàn)文本文件的新建、打開、保存及文本的字體格式設(shè)置、文本內(nèi)容的復(fù)制、剪切、粘貼操作。文件是計算機信息的主要存儲方式,C#通過System.IO命名空間支持對文件的讀、寫操作,通過文件可以實現(xiàn)項目資源的管理,同時也為項目的數(shù)據(jù)存儲提供了解決方案。項目引入掌握文件的讀取方法掌握文件的保存方法掌握文件打開、保存、字體對話框的創(chuàng)建及使用方法學(xué)習(xí)目標(biāo)簡易記事本項目運行后顯示主界面,如圖7-1所示:項目描述記事本項目包含三個主菜單,文件主菜單下包含“新建”、“打開”,“保存”和“退出”二級菜單,編輯主菜單下包含“復(fù)制”、“剪切”、“粘貼”二級菜單,格式主菜單下包含“字體”二級菜單,當(dāng)選擇菜單“新建”時,如果主窗口沒有內(nèi)容或文本內(nèi)容沒有發(fā)生改變,則文本框內(nèi)容清空,用戶可以開始新建文件,否則彈出提示對話框,詢問是否對文本內(nèi)容進行保存,如圖7-2所示:選擇菜單“打開”,則彈出“打開文件”對話框,要求用戶選擇要打開的文件,文件類型自動選擇為“.txt”文件,如圖7-3所示:項目描述當(dāng)用戶選擇要打開的文本文件,點擊“打開”按鈕后,該文件內(nèi)容自動顯示到主窗口,如圖7-4所示:選擇菜單“保存”,彈出文件保存對話框,要求輸入或選擇要保存的文件位置及文件名,如圖7-5所示:項目描述選擇菜單“字體”,則彈出字體對話框:如圖7-6所示:任務(wù)1:文件讀取實現(xiàn)任務(wù)2:文件保存實現(xiàn)任務(wù)3:編輯、字體功能實現(xiàn)工作任務(wù)任務(wù)描述
選擇菜單“打開”,則彈出“打開文件”對話框,要求用戶選擇要打開的文件,文件類型自動選擇為“.txt”文件,當(dāng)用戶選擇要打開的文本文件,點擊“打開”按鈕后,該文件內(nèi)容自動顯示到主窗口。任務(wù)1文件讀取實現(xiàn)1.C#命名空間System.IO
System.IO命名空間是C#對文件、目錄、文件流操作的支持類庫。System.IO命名空間支持的主要類如表所示:知識引入任務(wù)1文件讀取實現(xiàn)類別主要類字節(jié)流Stream、BufferedStream、MemoryStream、UnmanagedMemoryStream、FileStream二進制流BinaryReader、BinaryWriter字符流TextReader、TextWriter、StreamReader、StreamWriter、StringReader、StringWriter文件操作File、Path、Directory、FileSystemInfo、FileInfo、DirectoryInfo、DriveInfoIO異常IOException、FileLoadException、DriveNotFoundException、FileNotFoundException、DirectoryNotFoundException、PathTooLongException、EndOfStreamExceptionIO枚舉類型FileAccess、FileAttributes、FileOptions、FileShare、FileMode、SearchOption、SeekOrigin、DriveType2.OpenFileDialog對話框功能:彈出打開文件對話框主要屬性:InitialDirectory:對話框的初始目錄Filter:獲取或設(shè)置當(dāng)前文件名篩選器字符串FileName:第一個在對話框中顯示的文件或最后一個選取的文件Title:對話框標(biāo)題知識引入任務(wù)1文件讀取實現(xiàn)【例7-1】新建windows窗體應(yīng)用程序,添加一個“打開”按鈕和一個文本框,當(dāng)點擊“打開”按鈕后,彈出文件打開對話框,文件目錄定位到C盤根目錄,文件類型篩選為“.txt”文件,當(dāng)選擇一個文件后,將文件目錄及文件名顯示到文本框。程序運行效果如圖所示:知識引入任務(wù)1文件讀取實現(xiàn)【例7-1】privatevoidbtnFileOpen_Click(objectsender,EventArgse){OpenFileDialogopenFileDialog=newOpenFileDialog();openFileDialog.InitialDirectory="c:\\";openFileDialog.Filter="TXT文件|*.txt";if(openFileDialog.ShowDialog()==DialogResult.OK){stringfName=openFileDialog.FileName;txtFileName.AppendText(fName);}}知識引入任務(wù)1文件讀取實現(xiàn)3.字符流的讀取StreamReader類:以字符為單位的數(shù)據(jù)讀取操作主要方法:StreamReader(Streamstream):以一個文件流作參數(shù)創(chuàng)建StreamReader實例對象StreamReader(stringpath):以一個文件作參數(shù)創(chuàng)建StreamReader實例對象例:StreamReadersr=newStreamReader(“c:\\1.txt”);ReadLine():從StreamReader實例對象中讀取一行。Read():從StreamReader實例對象中讀取一個字符。ReadToEnd():從StreamReader實例對象中讀取所有內(nèi)容。Close():關(guān)閉文件流。知識引入任務(wù)1文件讀取實現(xiàn)【例7-2】新建windows窗體應(yīng)用程序,添加一個“打開”按鈕和一個文本框,當(dāng)點擊“打開”按鈕后,彈出文件打開對話框,文件目錄定位到C盤根目錄,文件類型篩選為“.txt”文件,當(dāng)選擇一個文件后,將文件內(nèi)容顯示到文本框。程序運行效果如圖所示:知識引入任務(wù)1文件讀取實現(xiàn)【例7-2】privatevoidbtnFileOpen_Click(objectsender,EventArgse){OpenFileDialogopenFileDialog=newOpenFileDialog();openFileDialog.InitialDirectory="c:\\";openFileDialog.Filter="TXT文件|*.txt";if(openFileDialog.ShowDialog()==DialogResult.OK){try{stringopenFileName=openFileDialog.FileName;StreamReadersr=newStreamReader(openFileName);txtContent.Text=sr.ReadToEnd();sr.Close();}catch(Exception){}}}知識引入任務(wù)1文件讀取實現(xiàn)任務(wù)1
文件讀取實現(xiàn)任務(wù)實現(xiàn)
privatevoid打開T
oolStripMenuItem_Click(objectsender,EventArgse){openFileDialog1.Filter="TXT文件|*.txt";openFileDialog1.FileName="";openFileDialog1.ShowDialog();if(openFileDialog1.FileName!=null){try{stringopenFileName=openFileDialog1.FileName;StreamReadersr=newStreamReader(openFileName);textContent.Text=sr.ReadToEnd();sr.Close();}catch(Exception){}}}命名空間System.IO支持C#的文件操作。文件流包括字符流、字節(jié)流、二進制流。文件操作需要進行異常處理。文件流使用完后需要關(guān)閉。任務(wù)1
文件讀取實現(xiàn)任務(wù)小結(jié)任務(wù)描述選擇菜單“保存”,則彈出“文件保存”對話框,要求用戶選擇要保存的文件或輸入保存的文件位置及文件名,文件類型自動選擇為“.txt”文件,當(dāng)用戶選擇要保存的文本文件,點擊“保存”按鈕后,主窗口中的內(nèi)容保存到對應(yīng)文件。任務(wù)2
文件保存實現(xiàn)1.SaveFileDialog對話框功能:彈出文件保存對話框主要屬性:Filter:獲取或設(shè)置當(dāng)前文件名篩選器字符串FileName:設(shè)置默認文件名DefaultExt:設(shè)置默認格式(可以不設(shè))AddExtension:設(shè)置自動在文件名中添加擴展名2.字符流的寫入StreamWriter類:以字符為單位的數(shù)據(jù)寫入操作主要方法:StreamWriter(stringpath):將字符流寫入文件,文件原來內(nèi)容被覆蓋。StreamWriter(stringpath,boolappend):將字符流寫入文件,寫入方式可以是覆蓋或追加。任務(wù)2文件保存實現(xiàn)知識引入【例7-3】新建windows窗體應(yīng)用程序,添加一個“保存”按鈕和一個文本框,當(dāng)點擊“保存”按鈕后,彈出文件保存對話框,文件類型篩選為“.txt”文件,默認文件名為“保存”,當(dāng)選擇一個文件或輸入文件名后,將文本框內(nèi)容保存至該文件。程序主界面如圖所示:任務(wù)2文件保存實現(xiàn)知識引入【例7-3】privatevoidbtnSave_Click(objectsender,EventArgse){SaveFileDialogsfd=newSaveFileDialog();sfd.Filter="TXT文件|*.txt";sfd.FileName="保存";sfd.DefaultExt="txt";sfd.AddExtension=true;if(sfd.ShowDialog()==DialogResult.OK){stringfilename=sfd.FileName;StreamWritersw=newStreamWriter(filename);sw.Write(this.txtContent.Text);sw.Close();}}任務(wù)2文件保存實現(xiàn)知識引入privatevoid保存
ToolStripMenuItem_Click(objectsender,EventArgse){saveFileDialog1.Filter="TXT文件|*.txt";saveFileDialog1.ShowDialog();if(saveFileDialog1.FileName!=null){try{stringfilename=saveFileDialog1.FileName;StreamWritersw=newStreamWriter(filename);sw.Write(this.textContent.Text);sw.Close();}catch(Exception){}}
}任務(wù)2文件保存實現(xiàn)任務(wù)實現(xiàn)文件保存對話框可以設(shè)置默認文件名及擴展名。文件流使用完后需要關(guān)閉。任務(wù)小結(jié)任務(wù)2文件保存實現(xiàn)選擇菜單“字體”,彈出字體設(shè)置對話框,當(dāng)選擇字體格式后,主窗口中字體格式應(yīng)用選擇的字體格式,選擇菜單“復(fù)制”、“剪切”、“粘貼”,實現(xiàn)“復(fù)制”、“剪切”、“粘貼”功能。任務(wù)描述任務(wù)3編輯、字體功能實現(xiàn)1.FontDialog字體對話框功能:彈出字體設(shè)置對話框主要屬性:Font:選擇的字體。2.文本框內(nèi)容的“剪切”、“復(fù)制”、“粘貼”publicvoidcopy():文本框中的當(dāng)前選定內(nèi)容復(fù)制到“剪貼板”publicvoidPaste():用剪貼板的內(nèi)容替換文本框中的當(dāng)前選定內(nèi)容。publicvoidCut():將文本框中的當(dāng)前選定內(nèi)容移動到“剪貼板”中。知識引入任務(wù)3編輯、字體功能實現(xiàn)“字體”菜單事件代碼如下:privatevoid字體
ToolStripMenuItem_Click(objectsender,EventArgse){fontDialog1.ShowDialog();//顯示字體對話框if(fontDialog1.Font!=null){textContent.Font=fontDialog1.Font;}
}任務(wù)實現(xiàn)任務(wù)3編輯、字體功能實現(xiàn)“復(fù)制”、“剪切”、“粘貼”菜單代碼編寫如下:privatevoid復(fù)制
ToolStripMenuItem_Click(objectsender,EventArgse){if(textContent.SelectedText!=null){textContent.Copy();}}privatevoid剪切
ToolStripMenuItem_Click(objectsender,EventArgse){if(textContent.SelectedText!=null){textContent.Cut();}}privatevoid粘貼
ToolStripMenuItem_Click(objectsender,EventArgse){textContent.Paste();
}任務(wù)實現(xiàn)任務(wù)3編輯、字體功能實現(xiàn)“新建”、退出菜單功能實現(xiàn)privatevoid新建ToolStripMenuItem_Click(objectsender,EventArgse){if(openFileDialog1.FileName!=null&&textContent.Modified==true&&MessageBox.Show("文本內(nèi)容已更改\n是否保存修改?","信息提示",MessageBoxButtons.OKCancel)==DialogResult.OK){saveFileDialog1.ShowDialog();if(saveFileDialog1.FileName!=null){try{stringfilename=saveFileDialog1.FileName;StreamWritersw=newStreamWriter(filename);sw.Write(this.textContent.Text);sw.Close();}catch(Exception){}}}textContent.Clear();}任務(wù)實現(xiàn)任務(wù)3編輯、字體功能實現(xiàn)“新建”、退出菜單功能實現(xiàn)privatevoid退出
ToolStripMenuItem_Click(objectsender,EventArgse){if(openFileDialog1.FileName!=null&&t
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025中國能建葛洲壩文旅公司副總經(jīng)理崗位公開招聘【2名】高頻重點提升(共500題)附帶答案詳解
- 2025中國移動(成都)產(chǎn)業(yè)研究院社會招聘高頻重點提升(共500題)附帶答案詳解
- 2025中國電信湖北隨州分公司招聘7人高頻重點提升(共500題)附帶答案詳解
- 2025中國電信吉林延邊分公司校園招聘高頻重點提升(共500題)附帶答案詳解
- 2025中共無錫市梁溪區(qū)委辦公室(檔案史志館)公開招聘編外人員2人(江蘇)高頻重點提升(共500題)附帶答案詳解
- 2025下半年貴州六盤水市事業(yè)單位及國企業(yè)招聘應(yīng)征入伍大學(xué)畢業(yè)生164人高頻重點提升(共500題)附帶答案詳解
- 2025下半年湖北孝感市孝南區(qū)部分事業(yè)單位招聘79人高頻重點提升(共500題)附帶答案詳解
- 2025下半年江蘇南京市江北新區(qū)社會事業(yè)局招聘編外人員29人歷年高頻重點提升(共500題)附帶答案詳解
- 2025下半年四川綿陽事業(yè)單位歷年高頻重點提升(共500題)附帶答案詳解
- 2025下半年四川南充西充縣事業(yè)單位招聘50人高頻重點提升(共500題)附帶答案詳解
- 公路工程定額應(yīng)用-公路工程定額的組成
- 保險行業(yè)風(fēng)控規(guī)則與制度培訓(xùn)
- 2022-2023學(xué)年佛山市禪城區(qū)六年級數(shù)學(xué)第一學(xué)期期末達標(biāo)測試試題含解析
- 《廣聯(lián)達培訓(xùn)教程》課件
- 揚州育才小學(xué)2023-2024六年級數(shù)學(xué)上冊期末復(fù)習(xí)試卷(一)及答案
- 函數(shù)的單調(diào)性說課課件-2023-2024學(xué)年高一上學(xué)期數(shù)學(xué)人教A版(2019)必修第一冊
- 浙江省溫州市2022-2023學(xué)年五年級上學(xué)期語文期末試卷(含答案)3
- 軟件系統(tǒng)實施與質(zhì)量保障方案
- UV激光切割機市場需求分析報告
- 裝修工程竣工驗收報告模板模板
- 籃球館受傷免責(zé)協(xié)議
評論
0/150
提交評論