2016-12-19 55 views
-1

我的代碼沒有問題。它不斷給我ArrayIndexOutOfBoundsException在分割線。有人能告訴我分割線有什麼問題嗎? 我正在從一個文件中讀取字符串,將它拆分爲兩個,然後用參數中的拆分字符串構造一個新對象以保存在memberList中。 這裏是我的txt文件將拆分字符串傳遞給構造函數參數時ArrayIndexOutOfBound

[email protected] Password 
[email protected] telephone 
[email protected] 123423 
EOF 

,我改變了我的代碼位。但這仍然不能幫助我拆分線。

try { 
      br = new BufferedReader(new FileReader("\\memberlist.txt")); 
      String inputLine; 
      while((inputLine = br.readLine())!= null){ 
       String[] split = inputLine.split(" ");  
       User newUser = new User(split[0], split[1]); 
       memberList.put(key, newUser); 
       key++; 
     } 

PS有一個catch子句。這裏是我的文本文件看起來像

+0

你能幫我解釋爲什麼我得到異常嗎? –

回答

0

曾經認爲,一條線可以有一個沒有「」的字符串。在這種情況下,您將得到IndexOutOfBound異常,因爲split [1]不存在。

2

在沒有你的txt文件的情況下幫助你是非常困難的。 ArrayIndexOutOfBoundsException指示您的分割只返回一個空數組或只有一個結果的數組。你的代碼中可能有一行沒有空格。

嘗試eclipse的debbug模式或顯示數組的內容以使其debbug。

祝你好運。

+0

謝謝你的幫助:) –

+0

不客氣。 –