我一直在想辦法讓我的代碼打開一個文件或創建一個(如果我給出的文件名是不存在的)。之後,它將運行一個程序,最終創建一個數組,並且我希望將該數組的內容轉換爲字符串並附加到我創建並打開的文件中。除了「追加」部分,我已經掌握了一切。它最後說,「對象引用未設置爲對象的實例」。你可以請這個啓發我嗎?幫助將不勝感激。我們如何在C#上使用FileMode.Append?
try
{
FileStream fs = new FileStream("inventory.ini", FileMode.OpenOrCreate, FileAccess.Read);
StreamReader reader = new StreamReader(fs);
while (!reader.EndOfStream)
{
string line = reader.ReadLine();
string[] data = line.Split('|');
int code = int.Parse(data[0]);
string name = data[1];
double price = double.Parse(data[2]);
Item item = new Item(code, name, price);
app.array[inventoryCount++] = item;
}
reader.Close();
fs.Close();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
app.Run();
try
{
FileStream fs = new FileStream("inventory.ini", FileMode.Append, FileAccess.Write);
StreamWriter writer = new StreamWriter(fs);
foreach (Item item in app.array)
{
writer.WriteLine(item.Code + "|" + item.Name + "|" + item.Price);
}
writer.Close();
fs.Close();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
Console.ReadLine();
}
哪一行發生異常? – 2013-05-04 17:07:59
它發生在app.Run()之後。它說該文件不能被訪問,因爲它正被另一個進程使用。 – joseminicario 2013-05-04 17:22:14
但是在你說的問題是「對象引用未設置爲對象的實例」。 – 2013-05-04 17:27:16