C#寫檔案處理操作在很多的開發項目中都會涉及,那麼具體的實現方法是什麼呢?這裡向大家介紹三大方法,希望對你在開發應用中有所啟發。
首先C#寫檔案處理操作必須先匯入命名空間:using System.IO;
C#寫檔案方式一:用FileStream
- //執行個體化一個儲存檔案對話方塊
- SaveFileDialog sf = new SaveFileDialog();
- //設定檔案檔案類型
- sf.Filter = "txt檔案|*.txt|所有檔案|*.*";
- //如果使用者沒有輸入副檔名,自動追加尾碼
- sf.AddExtension = true;
- //設定標題
- sf.Title = "寫檔案";
- //如果使用者點擊了儲存按鈕
- if(sf.ShowDialog()==DialogResult.OK)
- {
- //執行個體化一個檔案流--->與寫入檔案相關聯
- FileStream fs = new FileStream(sf.FileName,FileMode.Create);
- //獲得位元組數組
- byte [] data =new UTF8Encoding().GetBytes(this.textBox1.Text);
- //開始寫入
- fs.Write(data,0,data.Length);
- //清空緩衝區、關閉流
- fs.Flush();
- fs.Close();
-
- }
C#寫檔案方式二:用StreamWriter
- //執行個體化一個儲存檔案對話方塊
- SaveFileDialog sf = new SaveFileDialog();
- //設定檔案檔案類型
- sf.Filter = "txt檔案|*.txt|所有檔案|*.*";
- //如果使用者沒有輸入副檔名,自動追加尾碼
- sf.AddExtension = true;
- //設定標題
- sf.Title = "寫檔案";
- //如果使用者點擊了儲存按鈕
- if (sf.ShowDialog() == DialogResult.OK)
- {
- //執行個體化一個檔案流--->與寫入檔案相關聯
- FileStream fs = new FileStream(sf.FileName, FileMode.Create);
- //執行個體化一個StreamWriter-->與fs相關聯
- StreamWriter sw = new StreamWriter(fs);
- //開始寫入
- sw.Write(this.textBox1.Text);
- //清空緩衝區
- sw.Flush();
- //關閉流
- sw.Close();
- fs.Close();
- }
-
C#寫檔案方式三:用BinaryWriter
- //執行個體化一個儲存檔案對話方塊
- SaveFileDialog sf = new SaveFileDialog();
- //設定檔案檔案類型
- sf.Filter = "txt檔案|*.txt|所有檔案|*.*";
- //如果使用者沒有輸入副檔名,自動追加尾碼
- sf.AddExtension = true;
- //設定標題
- sf.Title = "寫檔案";
- //如果使用者點擊了儲存按鈕
- if (sf.ShowDialog() == DialogResult.OK)
- {
- //執行個體化一個檔案流--->與寫入檔案相關聯
- FileStream fs =
- new FileStream(sf.FileName, FileMode.Create);
- //執行個體化BinaryWriter
- BinaryWriter bw = new BinaryWriter(fs);
- bw.Write(this.textBox1.Text);
- //清空緩衝區
- bw.Flush();
- //關閉流
- bw.Close();
- fs.Close();
- }
另外,在文字檔最後新增內容時也可用:
System.IO.File.AppendAllText(FileName, contents, Encoding);
對於richTextBox來說,可以這樣載入和儲存檔案:
richTextBox1.LoadFile(FileName, RichTextBoxStreamType.PlainText);
richTextBox1.SaveFile(FileName, RichTextBoxStreamType.PlainText);