необходимо заполнить мой список с первым индексом каждой строки в текстовом файле - PullRequest
0 голосов
/ 09 декабря 2018

Сначала я борюсь с тем, что казалось довольно простым делом.Я пытаюсь заполнить мой listbox первым индексом каждой строки в моем текстовом файле.Вот мой код, в настоящее время я получаю первый индекс первой строки, дублированный 6 раз.

int Counter = 0;
StreamReader supReader = new StreamReader(@"data\Suppliers.txt", true);
while (!supReader.EndOfStream)
{
     string line = supReader.ReadLine();
     string[] tokens = line.Split(new char[] { ',' }, StringSplitOptions.None);
     foreach (string s in tokens)
     {
          if (listsup.Items.Contains(tokens) == false)
          {
                listsup.Items.Add(tokens[0]);
                Counter++;
          }

      }

}
supReader.Close();

любая помощь будет оценена, спасибо

1 Ответ

0 голосов
/ 09 декабря 2018

Хорошо, чтобы заставить все дело работать, я изменил свой код на более практичный подход:

Supfile = System.AppDomain.CurrentDomain.BaseDirectory + "data\\Suppliers.txt";

        try
        {
            StreamReader inputFile;
            inputFile = File.OpenText(Supfile);

            string lines;

            while (!inputFile.EndOfStream)
            {
                lines = inputFile.ReadLine();
                string[] tokens = lines.Split(',');
                if (!listsup.Items.Contains(tokens))
                {
                    listsup.Items.Add(tokens[0]);
                }
                else { listsup.Update(); }
            }
        }

        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }

Это работает отлично, пришлось добавить listsup.Items.Clear(); в начало, чтобы убедиться, что это не такпродублируйте список в списке.

...