C#課件-第9章 文件_第1頁(yè)
C#課件-第9章 文件_第2頁(yè)
C#課件-第9章 文件_第3頁(yè)
C#課件-第9章 文件_第4頁(yè)
C#課件-第9章 文件_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

文件VisualBasic.NET

程序設(shè)計(jì)主要內(nèi)容文件讀寫類文件管理類文件管理控件VisualBasic.NET

程序設(shè)計(jì)任務(wù)1任務(wù)的主要功能單擊“寫入數(shù)據(jù)”按鈕時(shí),從鍵盤輸入4個(gè)學(xué)生的數(shù)據(jù),保存到文本文件C:\stu_data.txt中。單擊“讀出數(shù)據(jù)”按鈕時(shí),從文件C:\stu_data.txt中將數(shù)據(jù)讀出,顯示在文本框中。學(xué)習(xí)該任務(wù)的主要目的1. 學(xué)習(xí)FileStream類的使用;2. 學(xué)習(xí)StreamReader類的使用;3. 學(xué)習(xí)StreamWriter類的使用;VisualBasic.NET

程序設(shè)計(jì)VisualBasic.NET

程序設(shè)計(jì)VisualBasic.NET

程序設(shè)計(jì)程序代碼//Button1命令按鈕以創(chuàng)建它的Click事件處理程序publicstructStudent{publicstringsno;publicstringname;publicstringsex;publicfloatscore;}

Students;

inti;

FileStream

fs=newFileStream("C:\\stu_data.txt",FileMode.Create);

StreamWriter

sw=newStreamWriter(fs);for(i=1;i<=4;i++){

s.sno=Interaction.InputBox("請(qǐng)輸入第"+Convert.ToString(i)+"位學(xué)生的學(xué)號(hào)","數(shù)據(jù)輸入","",-1,-1);

=Interaction.InputBox("請(qǐng)輸入第"+Convert.ToString(i)+"位學(xué)生的姓名","數(shù)據(jù)輸入","",-1,-1);

s.sex=Interaction.InputBox("請(qǐng)輸入第"+Convert.ToString(i)+"位學(xué)生的性別","數(shù)據(jù)輸入","",-1,-1);

s.score=Convert.ToSingle(Interaction.InputBox("請(qǐng)輸入第"+Convert.ToString(i)+"位學(xué)生的成績(jī)","數(shù)據(jù)輸入","",-1,-1));sw.WriteLine(s.sno.PadRight(15,'')+.PadRight(15,'')+s.sex.PadRight(15,'')+s.score);}

sw.Close();

fs.Close();VisualBasic.NET

程序設(shè)計(jì)//Button2命令按鈕以創(chuàng)建它的Click事件處理程序stringline;

FileStream

fs=newFileStream("C:\\stu_data.txt",FileMode.Open);

StreamReader

sr=newStreamReader(fs);textBox1.Text="學(xué)號(hào)".PadRight(13,'')+"姓名".PadRight(15,'')+"性別".PadRight(15,'')+"成績(jī)"+Environment.NewLine;while((line=sr.ReadLine())!=null){textBox1.Text=textBox1.Text+line+Environment.NewLine;}

sr.Close();

fs.Close();VisualBasic.NET

程序設(shè)計(jì)VisualBasic.NET

程序設(shè)計(jì)相關(guān)知識(shí)FileStream類使用FileStream類可以對(duì)文件系統(tǒng)上的文件進(jìn)行讀取、寫入、打開和關(guān)閉操作,并對(duì)其他與文件相關(guān)的操作系統(tǒng)句柄進(jìn)行操作,如管道、標(biāo)準(zhǔn)輸入和標(biāo)準(zhǔn)輸出。創(chuàng)建FileStream對(duì)象可以使用FileStream類的構(gòu)造函數(shù)創(chuàng)建FileStream對(duì)象實(shí)例。構(gòu)造函數(shù)名稱說(shuō)明FileStream(路徑,文件模式)使用指定的路徑和創(chuàng)建模式初始化FileStream類的對(duì)象。FileStream(路徑,文件模式,訪問(wèn)方式)使用指定的路徑、創(chuàng)建模式和讀/寫權(quán)限初始化FileStream類的對(duì)象。FileStream(路徑,文件模式,訪問(wèn)方式,共享方式)使用指定的路徑、創(chuàng)建模式、讀/寫權(quán)限和共享權(quán)限創(chuàng)建FileStream類的對(duì)象。FileStream(路徑,文件模式,訪問(wèn)方式,共享方式,緩沖區(qū)大小)用指定的路徑、創(chuàng)建模式、讀/寫及共享權(quán)限和緩沖區(qū)大小初始化FileStream類的對(duì)象。(1)路徑:字符串型表達(dá)式,是當(dāng)前FileStream對(duì)象將封裝文件的相對(duì)路徑或絕對(duì)路徑。(2)文件模式:用來(lái)確定打開或創(chuàng)建文件的方式。為FileMode枚舉類型。(3)訪問(wèn)方式:用來(lái)確定FileStream對(duì)象訪問(wèn)文件的方式。為FileAccess枚舉類型。(4)共享方式:確定文件由進(jìn)程共享的方式。為FileShare枚舉類型。VisualBasic.NET

程序設(shè)計(jì)FileStream類的方法VisualBasic.NET

程序設(shè)計(jì)方法名稱說(shuō)明Close關(guān)閉當(dāng)前流并釋放與之關(guān)聯(lián)的所有資源。Dispose釋放由FileStream占用的非托管資源,還可以另外再釋放托管資源。Flush清除該流的所有緩沖區(qū)會(huì)使得所有緩沖的數(shù)據(jù)都將寫入到文件系統(tǒng)。Read從流中讀取字節(jié)塊并將該數(shù)據(jù)寫入給定緩沖區(qū)中。ReadByte從文件中讀取一個(gè)字節(jié),并將讀取位置提升一個(gè)字節(jié)。Seek將該流的當(dāng)前位置設(shè)置為給定值。Write使用從緩沖區(qū)讀取的數(shù)據(jù)將字節(jié)塊寫入該流。WriteByte將一個(gè)字節(jié)寫入文件流的當(dāng)前位置。StreamReader類創(chuàng)建StreamReader對(duì)象可以使用StreamReader類的構(gòu)造函數(shù)創(chuàng)建StreamReader對(duì)象。VisualBasic.NET

程序設(shè)計(jì)StreamReader類的方法

VisualBasic.NET

程序設(shè)計(jì)方法名稱說(shuō)明Close關(guān)閉StreamReader對(duì)象和基礎(chǔ)流,并釋放與讀取器關(guān)聯(lián)的所有系統(tǒng)資源。Peek返回下一個(gè)可用的字符,但不使用它。Read讀取輸入流中的下一個(gè)字符或下一組字符。ReadLine從當(dāng)前流中讀取一行字符并將數(shù)據(jù)作為字符串返回。ReadToEnd從流的當(dāng)前位置到末尾讀取流。StreamWriter類創(chuàng)建StreamWriter對(duì)象進(jìn)行寫操作前,先要?jiǎng)?chuàng)建一個(gè)StreamWriter對(duì)象,可以使用StreamWriter類的構(gòu)造函數(shù)創(chuàng)建StreamWriter對(duì)象。VisualBasic.NET

程序設(shè)計(jì)StreamWriter類的方法VisualBasic.NET

程序設(shè)計(jì)方法名稱說(shuō)明Close關(guān)閉當(dāng)前的StreamWriter對(duì)象和基礎(chǔ)流。Flush清理當(dāng)前編寫器的所有緩沖區(qū),并使所有緩沖數(shù)據(jù)寫入基礎(chǔ)流。Write寫入流。WriteLine寫入重載參數(shù)指定的某些數(shù)據(jù),后跟行結(jié)束符。VisualBasic.NET

程序設(shè)計(jì)任務(wù)2任務(wù)的主要功能單擊“寫入”按鈕,會(huì)產(chǎn)生10個(gè)1到100之間的隨機(jī)數(shù),并顯示在第一個(gè)文本框中,然后這些數(shù)據(jù)被寫入指定文件。單擊“讀取”按鈕,將從文件中讀出數(shù)據(jù),排序后顯示在第二個(gè)文本框中。學(xué)習(xí)該任務(wù)的主要目的1. 學(xué)習(xí)BinaryReader類的使用;2. 學(xué)習(xí)BinaryWriter類的使用;VisualBasic.NET

程序設(shè)計(jì)VisualBasic.NET

程序設(shè)計(jì)程序代碼

int[]n=newint[10];

inti;

FileStream

fs=newFileStream(@"c:\mydata.dat",FileMode.Create);

BinaryWriter

bw=newBinaryWriter(fs);Randomrnum=newRandom();for(i=0;i<10;i++){

n[i]=rnum.Next(100);textBox1.Text=textBox1.Text+Convert.ToString(n[i])+"";}for(i=0;i<10;i++){

bw.Write(n[i]);}

bw.Close();

fs.Close();VisualBasic.NET

程序設(shè)計(jì)

inti;

int[]m=newint[10];

FileStream

fs=newFileStream(@"c:\mydata.dat",FileMode.Open,FileAccess.Read);

BinaryReader

br=newBinaryReader(fs);for(i=0;i<10;i++){

m[i]=br.ReadInt32();}

System.Array.Sort(m);//對(duì)數(shù)組m進(jìn)行排序

for(i=0;i<10;i++){textBox2.Text=textBox2.Text+Convert.ToString(m[i])+"";}

br.Close();

fs.Close();VisualBasic.NET

程序設(shè)計(jì)VisualBasic.NET

程序設(shè)計(jì)相關(guān)知識(shí)BinaryReader類創(chuàng)建BinaryReader對(duì)象

可以使用BinaryReader類的構(gòu)造函數(shù)創(chuàng)建BinaryReader對(duì)象。BinaryReader類的方法構(gòu)造函數(shù)名稱說(shuō)明BinaryReader(流)基于所提供的流,用UTF8編碼初始化BinaryReader類的對(duì)象。BinaryReader(流,編碼)基于所提供的流和特定的字符編碼,初始化BinaryReader類的對(duì)象。BinaryWriter類創(chuàng)建BinaryWriter對(duì)象BinaryWriter類的方法VisualBasic.NET

程序設(shè)計(jì)構(gòu)造函數(shù)名稱說(shuō)明BinaryWriter()初始化向流中寫入的BinaryWriter類的對(duì)象。BinaryWriter(流)基于所提供的流,用UTF-8作為字符串編碼來(lái)初始化BinaryWriter類的對(duì)象。BinaryWriter(流,編碼)基于所提供的流和特定的字符編碼,初始化BinaryWriter類的對(duì)象。VisualBasic.NET

程序設(shè)計(jì)任務(wù)3任務(wù)的主要功能單擊相應(yīng)的命令按鈕,完成對(duì)文件的新建、移動(dòng)、復(fù)制和刪除。學(xué)習(xí)該任務(wù)的主要目的1. 學(xué)習(xí)DriveListBox控件、DirListBox控件和FileListBox控件的使用;2. 學(xué)習(xí)File類的方法的使用;VisualBasic.NET

程序設(shè)計(jì)程序代碼//使DirListBox控件和DriveListBox控件同步privatevoiddriveListBox1_SelectedIndexChanged(objectsender,EventArgse){dirListBox1.Path=driveListBox1.Drive;}//使FileListBox控件和DirListBox控件同步privatevoiddirListBox1_SelectedIndexChanged(objectsender,EventArgse){fileListBox1.Path=dirListBox1.Path;}VisualBasic.NET

程序設(shè)計(jì)//“新建”按鈕代碼privatevoidbutton1_Click(objectsender,EventArgse){stringfpath;stringfname;

fpath=dirListBox1.Path;if(fpath=="")

MessageBox.Show("請(qǐng)選擇文件夾!","提示");

fname=Interaction.InputBox("請(qǐng)輸入新建文件的文件名和擴(kuò)展名","輸入","",-1,-1);if(fname!=""){FileStream

fs=File.Create(fpath+fname);

fs.Close();}}VisualBasic.NET

程序設(shè)計(jì)//“復(fù)制”按鈕代碼stringfpath;stringfnewpath;stringfname;

fpath=dirListBox1.Path;

fname=fileListBox1.FileName;if(fname=="")

MessageBox.Show("請(qǐng)選擇源文件!","提示");else{

fnewpath=Interaction.InputBox("請(qǐng)輸入目標(biāo)文件夾的路徑"+Environ

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論