2014-06-16 3 views
0
Scanner m = new Scanner(new File("C:\\Map.txt)); 
System.out.println(m.next()); 

Map.txt에는 fgdfgdfgfgfdg 행이 있습니다.스캐너가 의도 한대로 작동하지 않음 (Java)

내가 사용하려고하면 한 번에 하나의 토큰/문자 대신 전체 줄을 인쇄합니다. 어떻게 한 글자 만 읽을 수 있습니까?

P.S - 파일이 try-catch 블록에 있어야한다는 것을 알고 있습니다. 여기서는 필자도 File 대신 FileReader를 사용해 보았지만 같은 일이 발생했습니다.

+5

왜 당신이해야한다고 생각합니까 한 번에 하나의 토큰이나 편지를 읽으십시오. –

답변

0

m.next()는 전체 단어를 취합니다. 다음 공백까지의 모든 문자입니다. 당신이 뭔가를 할 수 있습니다

Scanner m = new Scanner(...); 
System.out.println(m.next().charAt(0)); 

편집 : 그런 다음 문자를 통해 문자열 및 루프와 같은 단어를 저장하는 것 한 번에 하나 개의 문자를 읽기위한

Scanner m = new Scanner(...); 
String word = m.next(); 

for (int i = 0; i < word.length(); i++) { 
    System.out.println(word.charAt(i)); 
} 
+1

각 단어의 첫 글자를 출력하지 않습니까? –

+0

첫 단어의 첫 글자 만 인쇄합니다. 나는 대답을 갱신 할 것이다. – Einar

관련 문제