>Java >java지도 시간 >Java에서 명령줄 인수를 효율적으로 구문 분석하려면 어떻게 해야 합니까?

Java에서 명령줄 인수를 효율적으로 구문 분석하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-19 19:24:16838검색

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

Java에서 명령줄 인수를 어떻게 구문 분석하나요?

Java에서 명령줄 인수를 효율적으로 구문 분석하려면 다음 라이브러리 중 하나를 활용하는 것이 좋습니다. :

  • Apache 커먼즈 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으로 문의하세요.