![](/img/trans.png)
[英]How can I make the display of a line in my command-line java program change without displaying a new line?
[英]How to make my program accept command-line options in Java?
我正在开发一个程序public class Talk
,它以两种方式通信连接客户端和服务器。 我将使用终端窗口运行该程序。 如何添加命令行选项以使这些选项起作用Talk –h [hostname | IPaddress] [–p portnumber]
Talk –h [hostname | IPaddress] [–p portnumber]
或Talk –s [–p portnumber]
或Talk –a [hostname|IPaddress] [–p portnumber]
或Talk –help
这是我到目前为止:
if (args[0] == "-h" && args[2] == "-p" && (Integer.parseInt(args[3]) % 1 == 0)) {
// code for Talk –h [hostname | IPaddress] [–p portnumber]
} else if (args[0] == "-s" && args[1] == "-p" && (Integer.parseInt(args[2]) % 1 == 0)) {
// code for Talk –s [–p portnumber]
} else if (args[0] == "-a" && args[2] == "-p" && (Integer.parseInt(args[3]) % 1 == 0)) {
// code for Talk –a [hostname|IPaddress] [–p portnumber]
} else if (args[0] == "-help") {
// code for Talk –help
} else {
System.out.println("Invalid invocation, use -help for instructions on how to use program");
System.exit(-1);
}
这是添加命令行选项的正确方法吗? 以及他们的限制?
除非它是一项教育练习,否则您可能会使用一个完善的库来解析命令行做得更好。 common-cli
( https://commons.apache.org/proper/commons-cli/ ) 就是这样一种,尽管还有其他的。
问题是稳健地解析命令行选项很困难。 有各种各样的复杂性需要处理,单独的错误检查可能非常繁重。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.