LogandadLoga LogandadLoga Ответов: 1

C# get файлы не работают


Понятия не имею, почему это не работает, это всего лишь пара файлов .txt, и никаких ожиданий не выводится.

Что я уже пробовал:

try
      {
          string[] array2 = Directory.GetFiles(@"C:\Users\Public\LSH\SearchingDB\", "*.txt");
          if (array2.Length == 0)
          {
              Console.WriteLine("No files found.");
          }
          foreach (string name in array2)
          {
              if (name.Contains(TextBox1.Text))
              {
                  Console.WriteLine(name);
              }
          }
      }
      catch (Exception excpt)
      {
          Console.WriteLine(excpt);
      }

[no name]

Так что отладьте свой код. Мы не можем сделать это за вас. GetFiles, безусловно, работает, так что вы не делаете что-то правильно.

George Swan

Убедитесь, что TextBox1. Text не содержит управляющих символов, таких как "return" или "newline".

[no name]

Каков же выход? Он пустой или как? Он показывает "файлы не найдены"?

Если вы не знаете, как отлаживать в VS, то позвоните мне бесплатно сюда:я вам помогу.

[no name]

Теперь вы можете перестать спамить на форуме, спасибо.

1 Ответов

Рейтинг:
1

Dave Kreskowiak

МММ...ты никогда не говорил, что "не работает". Это не правильное описание проблемы.

GetFiles работает просто отлично. Первое, что я проверю, - это путь, который вы ему указали. Либо путь не существует, либо у вас нет прав доступа к нему, либо в этой папке нет файлов с расширением "txt".

Затем запустите это в отладчике, установите точки останова, пройдите через код и проверьте содержимое переменных, чтобы увидеть, что в них. Прямо сейчас вы просто догадываетесь, что делает ваш код.

Еще одна глупость заключается в том, что в приложении Windows Forms нет консоли. Любой выход из способов сделать консольный вывод в окне вывода в Visual студии. Это действительно должно быть заменено отладкой.Вместо метода WriteLine.