FileStream對象表示在磁盤或網絡路徑上指向文件的流。
可以使用FileStream 類對文件系統上的文件進行讀取、寫入、打開、關閉等。
廢話不說,開始操作。
1.拖好控件、必須滴,將除了要寫文件的文本框外,其他的文本框的 ReadOnly 屬性均設為 True !
2.開始"選擇文件"操作
privatevoid btnReadChoose_Click(object sender, EventArgs e) {//創建 打開文件 對話框,可以直接拖控件哈。。 OpenFileDialog ofd=new OpenFileDialog();//將文件路徑顯示在文本框if (ofd.ShowDialog() == DialogResult.OK) { txtReadPath.Text = ofd.FileName; } }
效果圖。。。路徑就顯示出來了。
3.開始"讀出"操作,并將文本內容顯示在文本框.
其中先寫出一個顯示“溫馨提示”消息的方法
#region 顯示溫馨提示的消息+void MsgShow(string Msg)///<summary>/// 顯示溫馨提示的消息///</summary>///<param name="Msg">消息</param>void MsgShow(string Msg) { lbResult.Text ="溫馨提示:"+Msg; } #endregion
讀出操作
privatevoid btnReadFile_Click(object sender, EventArgs e) {//創建文件流、流操作要進行異常處理,并以using來釋放對象try {using (FileStream fs =new FileStream(txtReadPath.Text, FileMode.Open)) {//定義緩存區,3M 大小byte[] arrFileData =newbyte[1024*1024*3];//讀文件 存在 arrFileData 中 fs.Read(arrFileData, 0, arrFileData.Length);//轉 編碼格式 以便顯示在 文本框 txtReadMsg 中string ChangeToString = Encoding.Default.GetString(arrFileData); txtReadMsg.Text = ChangeToString; MsgShow("文本讀取成功!!!"); } }catch (Exception ex) { MessageBox.Show("異常:"+ ex.Message); } }
效果圖:
4.開始"寫入"操作,選擇文件就不累贅了,差不多.
privatevoid btnWriteFile_Click(object sender, EventArgs e) {//獲取要寫入文本的數據string strWriteData = txtWriteMsg.Text;try {using (FileStream fs =new FileStream(txtWritePath.Text, FileMode.Create)) {//轉為二進制寫入文本byte[] arrWriteData = Encoding.Default.GetBytes(strWriteData);//fs.Write(數據緩存區,從第幾個byte開始寫,寫多少個) fs.Write(arrWriteData, 0, arrWriteData.Length); MsgShow("寫入文本成功!!!"); } }catch (Exception ex) { MessageBox.Show("異常:"+ ex.Message); }
效果圖:
就這么滴,一個基于文件流FileStream的文本寫入、讀取小程序就完工了。主要是自己總結,更深一步了解流操作的過程,所以分享此文!
新聞熱點
疑難解答