检查命令行参数的错误

时间:2014-01-25 01:57:07

标签: java arrays error-handling command-line-arguments

对于我的程序,如果用户没有输入命令行参数并显示错误消息,我在创建错误检查时遇到问题。而不是崩溃。 没有文本文件参数,我得到一个ArrayIndexOutOfBoundsException:o?

public static void main(String[] commandlineArgument) {
      Integer[] array = ReadFile7.readFileReturnIntegers(commandlineArgument[0]);
      ReadFile7.printArrayAndIntegerCount(array, commandlineArgument[0]);
      if(commandlineArgument.length == 0){
         System.out.println("Please file name " +
               "as the first commandline argument.");
      }
   }

3 个答案:

答案 0 :(得分:3)

请检查:

if(commandlineArgument.length == 0){ ... }

使用前:

commandlineArgument[0]

答案 1 :(得分:0)

这远不是完美的,但对于命令行API,我一直在使用很多commons-cli:http://commons.apache.org/proper/commons-cli/usage.html

答案 2 :(得分:0)

如果commandlineArgument大于0,请先检查

if (commandlineArgument.length == 0){
    System.out.println("Please enter the file name " +
        "as the 1st commandline argument.");
} else {
    Integer[] array = ReadFile7.readFileReturnIntegers(commandlineArgument[0]);
    ReadFile7.printArrayAndIntegerCount(array, commandlineArgument[0]);
}