2013-03-15 29 views
34

我不得不使用StringBuilder而不是字符串列表,因爲這個項目被困在.NET 1.1中。這真的讓我感到痙攣,讓我覺得自己穿着破舊的豹紋皮拖鞋,並在泥土中拖着一個塊狀的俱樂部。因爲在屏幕上看不到太多東西(MessageBox沒有滾動條),所以我想編寫一系列我寫到文件中的調試信息來休閒學習。 .NET 1.1中似乎沒有一些簡單的編寫文件的方法。我也無法訪問Environment.Newline來完全分離我追加的行(AppendLine在這個StringBuilder的舊版本中不可用)。在.NET 1.1中將StringBuilder的內容寫入文本文件的最簡單方法是什麼?

足夠的嗚嗚,我猜...在.NET 1.1(C#)中最簡單的方法是將StringBuilder的內容寫出到文件中?手持設備上沒有「C」驅動器,所以我認爲我必須將它寫入「\ hereIAm.txt」左右。

+9

夥計。我很抱歉。 – 2013-03-16 00:20:44

+0

@DavidKhaykin對不起,年輕的天真的程序員在這裏。字符串生成器有什麼問題? – dckuehn 2013-11-27 16:59:10

+3

@dckuehn:我認爲他只是表達了同情心,因爲我需要與之合作的史前工具。 – 2013-11-27 18:42:07

回答

54

您仍然可以訪問StreamWriter

System.IO.StreamWriter file = new System.IO.StreamWriter(@"\hereIam.txt"); 
file.WriteLine(sb.ToString()); // "sb" is the StringBuilder 

從MSDN文檔:Writing to a Text File (Visual C#)

+5

StreamWriter file = new StreamWriter(@「\ hereIAm.txt」); file.WriteLine(SB.ToString()); //「SB」是StringBuilder – 2013-03-15 23:49:48

6

無需一個StringBuilder

string path = @"c:\hereIAm.txt"; 
if (!File.Exists(path)) 
{ 
    // Create a file to write to. 
    using (StreamWriter sw = File.CreateText(path)) 
    { 
     sw.WriteLine("Here"); 
     sw.WriteLine("I"); 
     sw.WriteLine("am."); 
    }  
} 

但是,當然,你可以使用StringBuilder創建所有的線條和他們在一次寫入文件。

sw.Write(stringBuilder.ToString()); 

StreamWriter.Write Method (String)(.NET Framework 1.1中)

Writing Text to a File (.NET Framework 1.1)

3

StreamWriter可用於NET 1.1。併爲Compact framework。只要打開該文件和的ToString適用於您的StringBuilder:

StringBuilder sb = new StringBuilder(); 
    sb.Append(......); 

    StreamWriter sw = new StreamWriter("\\hereIAm.txt", true); 
    sw.Write(sb.ToString()); 
    sw.Close(); 

另外請注意,你說你要調試的信息附加到文件(如日誌)。在這種情況下,StreamWriter的正確構造函數是接受append布爾型標誌的構造函數。如果爲true,則它嘗試附加到現有文件或創建一個新文件,如果它不存在。

+0

這是C#和VB混合... – 2013-03-15 23:38:47

+0

對不起,翻譯在飛行中,現在修復 – Steve 2013-03-15 23:39:44

56

對於.NET框架的更新版本,有一種更簡單的方法來將StringBuilder的內容寫入文本文件。它可以用一行代碼完成。這可能不是最有效率的,但這不是現在的問題。

System.IO.File.WriteAllText(@"C:\MyDir\MyNewTextFile.txt",sbMyStringBuilder.ToString()); 
+4

感謝他人的思考。你當然幫助過我。 – Peter 2015-06-11 18:08:39

+0

快樂的時光:) ...有時我們只需要完成 – 2018-01-04 00:49:33

相關問題