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

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

Susan Sarandon
풀어 주다: 2024-12-30 13:12:10
원래의
470명이 탐색했습니다.

How Can I Efficiently Parse Command Line Arguments in Java?

Java에서 명령줄 인수 구문 분석

명령줄 인수를 처리할 때 효율적이고 효과적으로 구문 분석하는 것은 강력한 Java 애플리케이션을 개발하는 데 중요합니다. 이를 달성하기 위해 다양한 접근 방식을 사용할 수 있습니다.

타사 라이브러리:

  • Apache Commons CLI: 구문 분석 명령을 위한 포괄적인 라이브러리 라인, 플래그 처리 및 유효성 검사 인수.
  • JSAP(Java Simple Argument Parser): 복잡한 명령줄을 구문 분석하기 위한 사용자 친화적이고 강력한 라이브러리.

DIY 구문 분석:

  • java.util.Scanner: 명령줄 인수 구문 분석을 위해 특별히 설계되지는 않았지만 Scanner를 이 목적으로 활용할 수 있습니다.

사용 예:

고려하세요 Apache 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 = null;

        try {
            cmd = parser.parse(options, args);
        } catch (ParseException e) {
            System.out.println(e.getMessage());
            formatter.printHelp("utility-name", options);
            System.exit(1);
        }

        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으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿