2016-02-09 2 views
0

Привет Я программирую консольное приложение, которое читает в текстовом файле .txt, а затем вычисляет Flesch Score (как легко читать текст). Он уже может начать работу с консоли, введя путь и некоторые параметры f.e. -f "filename" или -e для английского. Теперь я хочу читать в нескольких текстовых файлах с помощью команды -f "testfile*.txt. * Означает, что не имеет значения, что написано после f.e. перечисление. Как я могу добиться этого с помощью команды консоли? Поправьте меня, если я ошибаюсь, с чем-то я вроде новой для программирования :)Прочтите несколько файлов .txt сразу с помощью команды console

Вот как я это делаю:

string[] parameters = new string[] { "-f", "-e", "-g" }; 

Flesch_Reading_Ease.FleschScore.Language lang = FleschScore.Language.Undefined; 
string filename = ""; 
     foreach (string arg in args) 
     { 
      switch (arg.Trim().ToLower()) 
      { 
       case "-e": 
        lang = Flesch_Reading_Ease.FleschScore.Language.English; 
        break; 

       case "-g": 
        lang = Flesch_Reading_Ease.FleschScore.Language.German; 
        break; 

       case "-f": 
        break; 

       default: 
        {        
         if (File.Exists(arg)) 
          filename = arg; 
        } 
        break; 
      } 
     } 
+2

[. Прочитайте это, чтобы начать] (https://msdn.microsoft.com/en-us/library/dd413233%28v=vs.110 % 29.aspx), особенно пример кода в конце. –

ответ

3

Если вы используете метод Directory.GetFiles он будет возвращать список файлов что матч групповой символ:.

string[] files = Directory.GetFiles(folder, arg); 

где folder это имя каталога, вы смотрите в вы должны либо предположить текущую папку «» или разделите путь от входных аргументов.

Вы можете затем цикл по этому списку:

foreach (var file in files) 
{ 
    // Do your processing 
} 
+0

Итак, когда я просто использую 'string [] files = Directory.GetFiles (@" C: \ myFiles "," * .txt ", SearchOption.AllDirectories);' где в моем коде следует реализовать цикл foreach? – user5462581

+0

@ user5462581, где вы сейчас обрабатываете 'filename'. – ChrisF