首页 > Java > java教程 > 如何解析 Java 中的命令行参数?

如何解析 Java 中的命令行参数?

Mary-Kate Olsen
发布: 2024-12-19 13:22:12
原创
332 人浏览过

How Can I Parse Command-Line Arguments in Java?

在 Java 中解析命令行参数

在 Java 中解析命令行参数允许您在程序执行时将值传递给程序,提供灵活的方式来配置和自定义其行为。

可用库:

要获得强大且功能丰富的解决方案,请考虑使用以下库:

  • Apache Commons CLI:http://commons.apache.org/cli /
  • JSAP: http://www.martiansoftware.com/jsap/

使用 Scanner 类的自定义实现:

如果您更喜欢推出自己的解决方案,您可以可以利用 Java API 中的 Scanner 类来读取输入参数: http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html

使用 Commons CLI 解析字符串参数的示例:

以下代码片段演示了如何使用 Commons CLI 解析两个字符串参数:

import org.apache.commons.cli.*;

public class Main {

    public static void main(String[] args) throws Exception {

        Options options = new Options();

        Option input = new Option("i", "input", true, "input file path");
        input.setRequired(true);
        options.addOption(input);

        Option output = new Option("o", "output", true, "output file");
        output.setRequired(true);
        options.addOption(output);

        CommandLineParser parser = new DefaultParser();
        HelpFormatter formatter = new HelpFormatter();
        CommandLine cmd = parser.parse(options, args);

        String inputFilePath = cmd.getOptionValue("input");
        String outputFilePath = cmd.getOptionValue("output");

        System.out.println(inputFilePath);
        System.out.println(outputFilePath);

    }

}
登录后复制

命令行用法:

您可以通过以下方式执行程序:

$> java -jar target/my-utility.jar -i asd
Missing required option: o

usage: utility-name
 -i,--input <arg>    input file path
 -o,--output <arg>   output file
登录后复制

以上是如何解析 Java 中的命令行参数?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板