public static interface hiArgs.Helper
hiArgs.setHelper(Helper)
でセットすると、解析エラー時に呼び出されます。
エラーがあるとusageを表示する例を示します。
import otsu.hiNote.*; public class Test2 { static class MyHelper implements hiArgs.Helper { static String[] usage={ "PARAMETERS:" ," file [-encoding charSet] [-line #][-mark char2]" }; public void help(String key_,String msg_){ hiArgs.Helper.default_help(usage,key_,msg_); } } public static void main(String[] args_){ try{ hiArgs _arg=new hiArgs(args_); _arg.setHelper(new MyHelper()); String _charSet= _arg.argStr("-encoding","utf-8"); int _line = _arg.argInt("-line",0); String _mark = _arg.argStr("-mark",null); String[] _file = _arg.other("file",1,1); // 必ず1個必要 _arg.check("-help"); // 不明オプション、指定不足、-help指定時にhelpを出す //... hiArgs.Helper.default_helpはデフォルトhelp表示を行うメソッドで 引数のエラーメッセージと引数のString[]をusageとして表示します この例で例えば test.txt -line a という引数を与えると ------------ -line:java.lang.NumberFormatException: For input string: "a" PARAMETERS: file [-encoding charSet] [-line #][-mark char2] ----------- というエラー表示が得られます。 必須項目であるfile指定のない -encoding shift-jis -line 100 という引数を与えると ----------- file:lacked PARAMETERS: file [-encoding charSet] [-line #][-mark char2] ----------- というエラー表示が得られます
修飾子とタイプ | メソッドと説明 |
---|---|
static void |
default_help(String[] usage_,
String key_,
String msg_)
エラーメッセージを標準エラーに出力しexitします.
|
void |
help(String key_,
String msg_)
エラー時に呼ばれます
|
static void default_help(String[] usage_, String key_, String msg_)
次のコードとなっています。
public static void default_help(String[] usage_,String key_,String msg_){ hiU.err.println(key_+":"+msg_); for(String _s:usage_){ hiU.err.println(_s); } System.exit(hiU.isNull(msg_)?0:1); }
usage_
- usagekey_
- キーmsg_
- メッセージ