2012-07-31 58 views
0

我需要創建一個帶有標題的文本文件。創建一個帶有標題的.txt文件

我目前使用StreamWriter創建txt文件,如果它是不可用的,但我需要寫在一次頭,因爲每次我調用這個方法我會寫一個新的行成.txt文件

下面是我的代碼:

string line = userID + "\t" + fullname + "\t" + module + "\t" + 
       datetime + "\t" + SQLStatement; 

string fileExcel, filePath, fileName; 
fileExcel = "Audit.txt"; 
filePath = HttpContext.Current.Server.MapPath("~"); 
fileName = filePath + "\\" + fileExcel; 
System.IO.StreamWriter file = new System.IO.StreamWriter(fileName, true); 

file.WriteLine(line); 
file.Close(); 

回答

4
Boolean writeHeader = (!File.Exists(fileName)); 

using (StreamWriter file = new StreamWriter(fileName, true)) 
{ 
    if (writeHeader) 
    { 
     file.WriteLine(headerLine); 
    } 

    file.WriteLine(line); 
} 
+3

你真的應該在[使用](http://msdn.microsoft.com/en-us/library/yh598w02(v爲一次性包裝起來= vs.80).aspx)塊。 – James 2012-07-31 08:41:19

+0

@詹姆斯你不必在調用['StreamWriter.Close()'](http://msdn.microsoft.com/en-us/library/system.io.streamwriter.close.aspx)時,它會處理底層流。但是好的。 – CodeCaster 2012-07-31 08:46:32

+1

如果在調用'file.Close()'之前發生異常*會發生什麼。 – James 2012-07-31 08:48:05

相關問題