我想將文本從文本框追加到文本文件中的新行並且遇到問題。比方說,目前已經在文本文件中的內容,看起來像這樣追加到新行不會去換行
something
Something
Something<---- Cursor ends here
光標的結束位置的箭頭指向(在過去的「東西」對於g後,如果我嘗試使用
File.AppendAllLines(@"Location", new[]{tb.Text});
或者
File.AppendAllText(@"Location", tb.Text + Environment.NewLine);
就會把光標所在處,而不是在文本文件中的最後一個項目下一個新行的文本。它的工作原理,如果光標在一個新行開始與但如就在它結束的時候,所有事物都在同一行上。
有什麼我失蹤了嗎?會使用Streamwriter或其他方法解決這個問題嗎?
它做你應該期望的。您的文本不會以換行符初始化,因此它會緊接在前一個文本結束的位置後面添加,您是否在追加前讀取前一個文本? – Steve
請確保您追加到文件的行以'Environment.NewLine'結尾,或者將整個文件讀入內存並查看最後一個字符是否爲換行符。如果不是,則在文本前加一個換行符。 –
我很好奇你爲什麼認爲這些會附加到下面的行(正如當前寫入的),並且光標指向它所在的位置。 –