2014-03-26 34 views
1
 mykeyboard.useDelimiter("[/\n]"); 

正是我用於分隔符。我正在嘗試以mm/dd/yyyy的格式輸入日期。但是,新行的分隔符不起作用。例如11/12/1900和命中輸入給我這個錯誤:Java - 換行符和正斜槓分隔符

Exception in thread "main" java.util.InputMismatchException 
at java.util.Scanner.throwFor(Unknown Source) 
at java.util.Scanner.next(Unknown Source) 
at java.util.Scanner.nextInt(Unknown Source) 
at java.util.Scanner.nextInt(Unknown Source) 

只有當我輸入11/12/1900 /它實際上工作。

回答

1

試試這個:

mykeyboard.useDelimiter("[/\r\n]"); 

鍵盤上的回車鍵實際上是一個回車(\ r)的不換行;另外根據終端/平臺,輸入可能會有一些行結束翻譯。

+0

哦,它實際工作!謝謝!我一直在尋找過去的一小時,我無法弄清楚爲什麼\ n不工作。 – user2444400

+1

@ user2444400使用'System.getProperty(「line.separator」)'獲得更好的結果。 –

+0

@SotiriosDelimanolis只有在解析來自同一個系統的文本時纔有效。 (可能是這種情況) –

0

我覺得你可以僅僅通過斜線seprate它 「/」 試試這個: 字符串日期= keyboard.netxLine() date.split( 「/」)

相關問題