FileStream類,該對象隻能以字節形式讀取/寫入數據,這就使得操作非常困難。
一(yī)般有了FileStream對象,都會借用StreamWriter對象或StreamReader對象的方法處理文件。
如果不将文件指針改變到任意位置,則使用StreamWriter類或StreamReader類,這樣就變得比較容易。
創建方式一(yī):先創建FileStream對象,然後再創建StreamWriter對象
FileStream fs=new FileStream(string path, FileMode mode);
StreamWriter sw=new StreamWriter(fs);
創建方式二:直接創建StreamWriter對象
StreamWriter sw=new StreamWriter(string path, bool append);
Bool append 是一(yī)個bool值
False:表示創建一(yī)個新文件或者打開(kāi)現有文件,寫入時之前的數據會被清空。
True:表示打開(kāi)文件,保留原來的數據,如果找不到文件,則創建一(yī)個新文件。
StreamWriter類的常用方法
Close:關閉當前StreamWriter對象和基礎流。
Dispose:釋放(fàng)使用的所有資(zī)源。
Flush:清理當前編寫器所有緩沖區,并使所有緩沖數據寫入基礎流。
Write:寫入流。
WriteLine:寫入指定的某些數據,後跟行結束符。
SystemWriter類允許将字符和字符串寫入文件中(zhōng),SystemWriter默認使用UTF8Encoding編碼,如若使用其他編碼,就要構造UTF8Encoding的這個實例使Encoding.GetPreamble方法返回UTF-8格式編寫的Unicode字節。
實例代碼如下(xià):
string path = @"C:\Users\Administrator\Desktop\steng.cn\steng.doc";
string mystr = "學習C#既輕松又(yòu)快樂";
try
{
//第一(yī)種方式
//FileStream fs = new FileStream(path, FileMode.OpenOrCreate);
//StreamWriter sw = new StreamWriter(fs);
//第二種方式
StreamWriter sw = new StreamWriter(path, false);
sw.WriteLine(mystr);
sw.WriteLine(mystr);
sw.Close();
Console.WriteLine("寫入完成");
}
catch(Exception ex)
{
Console.WriteLine("寫入文件失敗,原因是:" + ex.Message.ToString());
}
Console.ReadKey();