本质上,我创建了一个模拟加油站的程序,该程序将保存对文件的交易,这是使用计时器的,但是它将在文件中创建同一辆车的多个记录。
交易创建后放入队列,我循环浏览此列表并将交易添加到文件中,但是某些车辆的加油速度比其他车辆快,并且加油时间超过一秒(检查交易的频率)要输出的内容),那么for循环会再次从头开始,从而导致文件中出现重复的条目。
我真正想到的唯一解决方案是检查文件的最后一行并将其与我将要写入的文件进行比较,并说是否没有写入文件,但这对其他条目,我很好,真的很困在这里:/
//Writes the transactions to a file
string appendText = "£" + transaction.Cost.ToString() + ", " + transaction.Vehicle.TankSize.ToString() +" litres, " + transaction.Vehicle.PlateNumber.ToString() + Environment.NewLine;
File.AppendAllText("HistoricTransactions.txt", appendText);
这是写入文件