Некорректное добавление данных в список - C#
Формулировка задачи:
Здравствуйте. Не могу найти ошибку в коде:
Класс с двумя полями:
Необходимо реализовать чтение данных из файла. Примерное содержание файла:
20000 5
50000 6
100000 7
200000 8
...
где 20000,50000,100000,200000 - номинал купюры,а 5,6,7,8 - их количество.
Проблема заключается в том,что при компиляции на экране появляется последняя строка 4 раза, то есть:
200000 8
200000 8
200000 8
200000 8
а нужно, чтобы вывело содержимое файла без повторов строк и т.п.
Помогите пожалуйста!!!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace bankomat
{
class Program
{
static void Main(string[] args)
{
bankomat bankomat1 = new bankomat();
List<bankomat> listik = new List<bankomat>();
StreamReader sr = new StreamReader("bankomat.txt");
string line = string.Empty;
string[] massive;
while ((line = sr.ReadLine()) != null)
{
massive = line.Split(new char[] { ' ', '\t', });
bankomat1.nominal = int.Parse(massive[0]);
bankomat1.count_of_nominal = int.Parse(massive[1]);
listik.Add(bankomat1);
line = string.Empty;
}
sr.Close();
foreach (bankomat q in listik)
{
Console.WriteLine("{0} {1}", bankomat1.nominal, bankomat1.count_of_nominal);
}
}
}
}using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace bankomat
{
class bankomat
{
public int nominal;
public int count_of_nominal;
}
}Решение задачи: «Некорректное добавление данных в список»
textual
Листинг программы
class Bankomat
{
public int Nominal;
public int CountOfNominal;
}
class Program
{
static void Main(string[] args)
{
var listik = new List<Bankomat>();
using (var sr = new StreamReader("bankomat.txt"))
{
string line;
while ((line = sr.ReadLine()) != null)
{
string[] array = line.Split(new[] { ' ', '\t' }, StringSplitOptions.RemoveEmptyEntries);
var bankomat = new Bankomat();
bankomat.Nominal = int.Parse(array[0]);
bankomat.CountOfNominal = int.Parse(array[1]);
listik.Add(bankomat);
}
}
foreach (Bankomat q in listik)
Console.WriteLine("{0}\t{1}", q.Nominal, q.CountOfNominal);
Console.ReadKey(true);
}
}