Dart有一个getopt库吗?
使用Options已经不再是一个选择,使用:
void main(List<String> args) {
print(args);
}
要获取可执行文件,请使用 Platform.executable(Platform 来自 dart:io)
要解析传递给 main 函数的参数,请使用这个很棒的包
// dart 1.0
import 'dart:io';
void main(List<String> args) {
String exec = Platform.executable;
List<String> flags = Platform.executableArguments;
Uri script = Platform.script;
print("exec=$exec");
print("flags=$flags");
print("script=$script");
print("script arguments:");
for(String arg in args)
print(arg);
}
编辑:这已经失效了,请参考上面接受的答案。
请参见选项
。
http://api.dartlang.org/dart_io/Options.html
List<String> argv = (new Options()).arguments;
#!/usr/bin/env dart
main() {
print("Args: " + new Options().arguments);
}
dart:core
。感谢你提供的Dart技巧。显然,+
可以用于字符串连接,因为它在这个片段中起作用。也许在Dart中更喜欢使用字符串插值,但这不是唯一的选择。 - mcandre
$0
来实现。 - mcandrescript
访问器。http://rosettacode.org/wiki/Program_name#Dart - mcandreOptions
类已经不存在于 dart:io 中,请使用 package:args 代替。 - Steven Roose