The example code below shows a simple example that expects some options and prints what's been found at the command line. The options are expected as follows:
-a - a boolean option not accepting any argument values
-d - a boolean option, not accepting values
-b - an option with a mandatory argument value
-c - an option with an optional argument value
import cz.phalanx.config.Config; public class Example { public static void main(String ... args) { // construct the parser: Config config = new Config("ab:c::d"); // parse the arguments if (!config.parseArguments(args)) System.exit(1); // the error is already written else { // process the arguments. For a command line like: // example -abone -cb two -a three -c four five // yields this results: //config.isOn('a') == true; //config.isOn('b') == true; //config.isOn('c') == true; //config.isOn('d') == false; //config.getOptionArgs('b') is {"one", "two"} //config.getOptionArgs('c') is {"four"} //config.getArguments() is {"three", "five"} for (char opt: "abcd".toCharArray()) { if (config.isOn(opt)) { System.out.println("Option `"+opt+"' is on."); String[] optargs = config.getOptionArgs(opt); if (optargs.length > 0) { System.out.print("Option `"+opt+"' has following values:"); for (String optval: optargs) System.out.print(" "+optval); System.out.println(); } } else System.out.println("Option `"+opt+"' is off."); } System.out.print("Non-option arguments:"); if (config.getArguments() != null) { for (String optval: config.getArguments()) System.out.print(" "+optval); } else System.out.print(" None."); System.out.println(); } } }