首頁 >Java >java教程 >如何解析 Java 中的命令列參數?

如何解析 Java 中的命令列參數?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-19 13:22:12334瀏覽

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn