Я создал консольное приложение, которое принимает образец текстового файла и обрабатывает его. Это отлично работает, когда я отлаживаю его через Visual Studio, но когда я пытаюсь запустить его из командной строки, аргумент не передается.Невозможно передать аргумент консольному приложению, есть ли недостатки в моем мышлении?
Я понимаю, что я должен быть в состоянии запустить приложение, вызывая его и передавая аргумент, как:
применения аргумента
Что в моем случае было бы что-то вроде этого: C: \ Users \ Alex \ Desktop \ ConsoleApplication2.application C: \ Users \ Alex \ Documents \ Sample.txt
Есть ли что-то очевидное, что мне не хватает?
Однако делать это генерирует следующее исключение: «Неизвестное исключение: System.IndexOutOfRangeException: Индекс находился вне границ массива на ConsoleApplication2.TestProgram.Main (String [] арг).»
аргумент должен быть доступ через код C# следующим
public static void Main(string[] args)
{
System.Console.WriteLine(args[0]);
// Read the file as one string.
string text = System.IO.File.ReadAllText(@args[0]);
...
...
rest of method here
...
...
}
Почему ваше приложение * приложение *? –
Вы ничего не пропустили (помимо потенциальной проблемы с разрешениями), что произойдет, когда вы запустите это? – BradleyDotNET
я получаю следующее сообщение «Необработанное исключение: System.IndexOutOfRangeException:. Индекс находился вне границ массива в ConsoleApplication2.TestProgram.Main (String [] арг)» Я в предположении, что это потому что в приложение фактически не передается никаких аргументов. Следует отметить, что это мой первый опыт работы с C# или Visual Studio, поэтому я чувствую себя как во всем. –