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

如何有效率地解析 Java 中的命令列參數?

Susan Sarandon
Susan Sarandon原創
2024-12-19 19:24:16818瀏覽

How Can I Efficiently Parse Command-Line Arguments in Java?

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

要有效解析Java 中的命令列參數,請考慮使用下列程式庫之一:

  • Apache Commons CLI: http:/ /commons.apache.org/cli/
  • JSAP(Java簡單參數解析器): http://www.martiansoftware.com/jsap/

Java也提供了Scanner類別用於手動參數解析: http://docs.oracle. com/javase/7/docs/api/java/util/Scanner.html

使用Commons CLI的範例:

解析使用Commons CLI 的兩個字串參數,建立一個CommandLineParser 並使用解析參數.parse(...).

import org.apache.commons.cli.*;

public class Main {

    public static void main(String[] args) throws Exception {
        // Create options
        Options options = new Options();
        options.addOption("i", "input", true, "input file path");
        options.getOption("i").setRequired(true);
        options.addOption("o", "output", true, "output file");
        options.getOption("o").setRequired(true);

        // Parse arguments
        CommandLineParser parser = new DefaultParser();
        CommandLine cmd = parser.parse(options, args);

        // Get parsed values
        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