И есть ли в Dart библиотека getopt?
Как получить доступ к параметрам argv/командной строки в Dart?
Ответы (4)
Использование параметров больше не вариант, используйте:
void main(List<String> args) {
print(args);
}
Чтобы получить исполняемый файл, используйте Platform.executable (платформа происходит от dart:io)
Для разбора аргументов, переданных в main, используйте этот крутой пакет
person
Tomas Kulich
schedule
25.11.2013
Изменить: это больше недействительно, см. принятый ответ выше.
См. Options
.
http://api.dartlang.org/dart_io/Options.html
List<String> argv = (new Options()).arguments;
person
ustun
schedule
14.02.2012
Я вижу, что Dart опускает имя скрипта в аргументах. Вы знаете, как получить его? Ruby и Perl делают это с помощью
$0
.
- person mcandre; 14.02.2012
А, у Options есть аксессор
script
. rosettacode.org/wiki/Program_name#Dart
- person mcandre; 14.02.2012
Небольшой дополнительный комментарий: по состоянию на март 2013 года класс Options находится в dart:io.
- person Florian Loitsch; 22.03.2013
Класс
Options
больше не существует в dart:io. Вместо этого используйте package:args.
- person Steven Roose; 14.11.2014
Я использую эту библиотеку для определения и анализа аргументов командной строки http://pub.dartlang.org/packages/args< /а>
person
adam-singer
schedule
21.12.2012
person
schedule
Некоторые комментарии: (1) вам не нужно импортировать основную библиотеку, (2) оператор + нельзя использовать для конкатенации строк, поэтому используйте Args: ${new Options().arguments}
- person rmuller; 04.09.2012
Я думаю, что для версии Dart/Mac OS X, которую я использую, вам действительно нужно импортировать
dart:core
. Спасибо за советы по Дарту. Очевидно, что +
можно использовать для конкатенации строк, потому что это работает в этом фрагменте. Возможно, интерполяция строк предпочтительнее в Dart, но это не единственный вариант.
- person mcandre; 04.09.2012