2016-12-19 2 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++; 
     } 

추신 : catch 절이 있습니다. 그리고 여기 내 텍스트 파일이 무엇입니까?

+0

예외가 발생하는 이유를 알려주십시오. –

답변

0

줄에는 ""이없는 문자열이있을 수 있습니다. 이 경우 split [1]이 (가) 존재하지 않으므로 IndexOutOfBound 예외가 발생합니다.

2

txt 파일이 없으면 도움을 받기가 매우 어렵습니다. ArrayIndexOutOfBoundsException는 분할이 하나의 결과 만있는 빈 배열 또는 배열을 반환 함을 나타냅니다. 코드에 공간이없는 행이있을 것입니다.

이클립스의 debbug 모드를 사용해 보거나 배열 내용을 표시하여 디버그하십시오.

행운을 빈다.

+0

도움 주셔서 감사합니다. –

+0

안녕하세요. –

관련 문제