【问题标题】:How do i 'get' help string from commons cli instead of 'print'我如何从 commons cli 中“获取”帮助字符串而不是“打印”
【发布时间】:2017-11-09 15:10:00
【问题描述】:

我知道,下面的代码会生成帮助文本并将其打印到控制台

 HelpFormatter formatter = new HelpFormatter();
 formatter.printHelp("myapp", header, options, footer, true);

但是我如何将帮助文本作为String 对象获取。我期待类似的东西

formatter.getHelp("myapp", header, options, footer, true);

CLI API 中是否隐藏了任何方法?或者有什么方法可以获取帮助文本而不是将其打印到控制台。

【问题讨论】:

  • 感谢您的提问,所以我们不必:)

标签: java apache-commons apache-commons-cli


【解决方案1】:

您可以执行以下操作

    HelpFormatter formatter = new HelpFormatter();

    StringWriter out = new StringWriter();
    PrintWriter pw = new PrintWriter(out);

    formatter.printHelp(pw, 80, "myapp", "test-header", opts,
            formatter.getLeftPadding(), formatter.getDescPadding(), "test-footer", true);
    pw.flush();

    System.out.println("Had usage: " + out.toString());

详情请参阅JavaDoc

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-28
    • 2015-01-30
    • 1970-01-01
    • 1970-01-01
    • 2023-02-10
    • 2017-09-16
    • 2016-05-07
    相关资源
    最近更新 更多