C #: Как вы настраиваете строку [] для приема ввода всей строки так, как главная точка входа консоли воспринимает ее как разбитую? - PullRequest
0 голосов
/ 15 апреля 2009

Точная копия:

Разделить строку, содержащую параметры командной строки, на строку [] в C #


C #: Как настроить для строки [] прием ввода всей строки так же, как главная точка входа консоли воспринимает ее как разбитую?

Когда вы запускаете консольное приложение, созданное в c #, его метод main принимает любые другие аргументы, введенные в него, при выполнении в его параметре string [] args, разбитого на массив в args [].

Как вы можете выполнить то же самое, если не используете консольное приложение?

Ответы [ 5 ]

4 голосов
/ 15 апреля 2009

API команд Windows обрабатывает все элементы, следующие за именем исполняемого файла, в массив и передает его в исполняемый файл. Таким образом, с точки зрения .NET среда выполнения просто принимает уже разделенную строку от вызывающей стороны.

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

2 голосов
/ 15 апреля 2009

Мне повезло с Mono.GetOptions . Мне пришлось скопировать его из проекта Mono и добавить в качестве проекта в мое решение, но он прекрасно работает.

1 голос
/ 15 апреля 2009

Я воспользуюсь другим подходом ... Вы хотите получить аргументы в приложении Windows Forms, как в консольном приложении?

Просто замените ваш Main () на

static void Main ( string[] args )
0 голосов
/ 15 апреля 2009

Вы имеете в виду, как params ? Разбитая строка с переменным числом параметров метода?

0 голосов
/ 15 апреля 2009

String.split ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...