我有一種讀取文本文件並將內容寫入數組列表的方法。數組列表是全局聲明的,沒有元素。這種方法完美。將數組列表寫入文本文件C#
private void LoadArrayList()
{
try
{
string actor;
TextReader tr;
tr = File.OpenText("actors.txt");
while ((actor = tr.ReadLine()) != null)
{
ActorArrayList.Add(actor);
}
tr.Close();
}
catch (Exception ex)
{
MessageBox.Show("Error loading file!");
}
}
我現在需要創建一個方法來讀取數組列表並將內容寫回到文本文件,替換文本文件中當前的內容。此方法導致一個空白的文本文件。任何想法是什麼我錯過/做錯了?
private void WriteArrayList()
{
TextWriter tw;
try
{
tw = File.CreateText("actors.txt");
foreach (object o in ActorArrayList)
tw.WriteLine(o.ToString());
}
catch (Exception ex)
{
MessageBox.Show("Error saving file!");
}
}
注:我知道人似乎並不喜歡數組列表或TextReader的或TextWriter的,但我做的課程涵蓋他們,所以我需要使用它們。
您使用'ArrayList',通常僅使用爲了向後兼容任何特別的原因,通常優選的是使用'列表',在這種情況下,'列表'。 –
2014-10-16 10:20:12
當您處理實現「IDisposable」的類時,您需要使用'使用'塊。如果您有支持它的Visual Studio,請啓用靜態代碼分析,以便在您忘記時發出警告。 – nvoigt 2014-10-16 10:20:36
在方法的末尾使用'tw.Close();'。 – 2014-10-16 10:24:33