C#寫入文件的幾種方式

 1 1. FileStream.Write
 2 
 3 string filePath = Directory.GetCurrentDirectory() + "\\" + Process.GetCurrentProcess().ProcessName + ".txt";
 4 if (File.Exists(filePath))
 5   File.Delete(filePath);
 6 
 7 FileStream fs = new FileStream(filePath, FileMode.Create);
 8 //得到字節數組
 9 
10 string xyPointer = string.Format("X: {0}, Y: {1}", this.Location.X.ToString(), this.Location.Y.ToString());
11 string highWidth = string.Format("\nW: {0}, H: {1}", this.Width.ToString(), this.Height.ToString());
12 byte[] data = System.Text.Encoding.Default.GetBytes(xyPointer + highWidth);
13 //開始寫入
14 fs.Write(data, 0, data.Length);
15 //清空緩衝區、關閉流
16 fs.Flush();
17 fs.Close();
18 
19 2. File.WriteAllLines
20 
21 //若是文件不存在,則建立;存在則覆蓋
22 //該方法寫入字符數組換行顯示
23 string[] lines = { "first line", "second line", "third line", "第四行" };
24 System.IO.File.WriteAllLines(@"C:\testDir\test.txt", lines, Encoding.UTF8);
25 
26 3. File.WriteAllText
27 
28 //若是文件不存在,則建立;存在則覆蓋
29 string strTest = "該例子測試一個字符串寫入文本文件。";
30 System.IO.File.WriteAllText(@"C:\testDir\test1.txt", strTest, Encoding.UTF8);
31 
32 4. StreamWriter.Write
33 
34 //在將文本寫入文件前,處理文本行
35 //StreamWriter一個參數默認覆蓋
36 //StreamWriter第二個參數爲false覆蓋現有文件,爲true則把文本追加到文件末尾
37 using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\testDir\test2.txt", true))
38 {
39   foreach (string line in lines)
40   {
41     if (!line.Contains("second"))
42     {
43       file.Write(line);//直接追加文件末尾,不換行
44       file.WriteLine(line);// 直接追加文件末尾,換行 
45     }
46   }
47 }
相關文章
相關標籤/搜索