2014-02-24 20 views
0

我需要解析我的主要方法,以查看布爾值是設置爲true還是false,但每次運行它時都將其設置爲false。主要方法parseBoolean不工作

當我去運行程序,這是我的相互作用輸出:

> java ScraperTestRunner1 true, "/Desktop/imputfile.txt" 
2 
false 
/Desktop/imputfile.txt 

我這個主要方法的代碼是:

public static void main(String[] args){ 
    System.out.println(args.length); 

    if (args.length == 2) { 
     docketBoolean = Boolean.parseBoolean(args[0]); 
     inputDateFileString = (args[1]); 
     System.out.println(docketBoolean); 
     System.out.println(inputDateFileString); 

當我檢查,看看是否args.length之前是1,然後只搜索布爾值它會給我正確的布爾值,但現在不是。任何想法,爲什麼這可能是?

+3

擺脫真正的逗號。 –

回答

6

您正在解析的是"true,"這是而不是"true"相同。

得到您的調用擺脫逗號:

java ScraperTestRunner1 true "/Desktop/imputfile.txt" 

的命令行參數沒有被指定爲一個逗號分隔的列表;它們是空格分隔的(使用雙引號以允許參數中的空格)。

1

命令行參數是空格分隔的,不是逗號分隔的。嘗試:

java ScraperTestRunner1 true "/Desktop/imputfile.txt" 

目前的情況是,布爾是解析「真」,它是從它的角度看假的。