2014-10-30 3 views
0

파일을 열고 싶습니다. int 숫자를 나타내는 문자열을 읽고 순서대로 입력하십시오. int n6 = inputStream.nextInt();을 읽지 마십시오. int n6 코드를 제거하면 작동합니다. 이것은 주 코드입니다. 제 6 번째가 올바른 위치에 없다는 것을 알고 있습니다. 이것이 작동하지 않는다는 것을 보여주는 것입니다. 또한 도움이된다면 NetBeans를 사용하고 있습니다.텍스트 파일에서 숫자를 읽을 수 없습니다

번호는 다음과 같습니다 5, -3, 3, 8, 4, 0

import java.io.FileInputStream; 
import java.io.FileNotFoundException; 
import java.util.Scanner; 
import java.util.NoSuchElementException; 

Scanner inputStream = null; 
    try { 
     inputStream = new Scanner(new FileInputStream("stuff.txt")); 
    } catch(FileNotFoundException e) { 
     System.out.println("File not found"); 
     System.exit(0); 
    } catch(NoSuchElementException e) { 
     System.out.println("Error"); 
     System.exit(0); 
    } 
    int n1 = inputStream.nextInt(); 
    int n2 = inputStream.nextInt(); 
    int n3 = inputStream.nextInt(); 
    int n4 = inputStream.nextInt(); 
    int n5 = inputStream.nextInt(); 
    int n6 = inputStream.nextInt(); 

    inputStream.nextLine(); 
    String line = inputStream.nextLine(); 

    System.out.println(n2); 
    System.out.println(n1); 
    System.out.println(n3); 
    System.out.println(n5); 
    System.out.println(n4); 
    System.out.println(n6); 

    inputStream.close(); 
+1

당신은 아마도'nextLine' 호출이 필요하지 않습니다. – MadProgrammer

+0

작동합니다. 고맙습니다. – raiderX2G3

+1

글쎄, 좋은 변화를;) – MadProgrammer

답변

0

내가 꽵()를 사용하여이 코드 사용하지 않는 제안 :이 도움이되기를 바랍니다

Scanner scanner = new Scanner(new File("ContainsInts.txt")); 
int [] ContainsInts = new int [100]; 
int i = 0; 
while(scanner.hasNextInt()) 
{ 
    ContainsInts[i++] = scanner.nextInt(); 
} 

가, 내가 가진이 같은 문제가 몇 주 전에 lol

+0

배열 대신'ArrayList'를 사용하면 더 많은 요소를 추가 할 때 커지기 때문에 더 안전합니다. 파일에 100 개가 넘는 정수가 들어 있으면이 코드는 실패합니다. – dimo414

관련 문제