解析命令列參數是使用 Java 應用程式時的常見任務。存在多種方法可以有效地實現此目的。
如果您不想使用外部庫,您可以使用以下命令滾動您自己的命令列參數解析器Java 的內建類別。 java.util.Scanner 類別可讓您從命令列讀取輸入並將其解析為適當的資料類型。
import org.apache.commons.cli.*; public class Main { public static void main(String[] args) throws Exception { // Define command line options 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); // Parse command line arguments CommandLineParser parser = new DefaultParser(); CommandLine cmd = null; // Bad practice, only for demonstration purposes try { cmd = parser.parse(options, args); } catch (ParseException e) { System.out.println(e.getMessage()); HelpFormatter formatter = new HelpFormatter(); formatter.printHelp("utility-name", options); System.exit(1); } // Retrieve parsed values String inputFilePath = cmd.getOptionValue("input"); String outputFilePath = cmd.getOptionValue("output"); // Use the parsed arguments 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中文網其他相關文章!