컴퓨터프로그래밍/JAVA

JAVA - Scanner클래스

zelkova 2013. 10. 14. 22:13

 <목차로 돌아가기>


1. 입력값을 지정된 구분 패턴(구분자, Delimiter Pattern)으로 파싱할 수 있다.

2. 구분 패턴의 기본값은 공백 문자 White space이다.

     (java.lang.Character.isWhitespace())

3. 파일, 스트림, 문자열을 원천 데이터로 사용할 수 있다.

4. 토큰들은 자동적으로 기본 데이터형으로 변경될 수 있다.


import java.io.File;

import java.io.IOException;

import java.util.Scanner;


public class Test {

public static void main(String[] args) {

Scanner s = null;

try{

s = new Scanner(new File("temp.txt"));


while (s.hasNext()){

System.out.println(s.next());

}

}catch(IOException ioe){

ioe.printStackTrace();

}finally{

if(s != null){

s.close();

}

}

}

}


import java.util.Scanner;


public class Test{

public static void main(String[] args){

String input = "scjp del java del A del 1";

Scanner s = new Scanner(input).useDelimiter("\\s*del\\s*");

System.out.println(s.next());

System.out.println(s.next());

System.out.println(s.next());

System.out.println(s.nextInt());

s.close();

}

}


java.util.Scanner 생성자

Scanner(File source)

지정된 파일을 사용하는 Scanner 객체를 생성한다.


Scanner(InputStream source)
지정된 입력 스트림을 사용하는 Scanner 객체를 생성한다.


Scanner(String source)

지정된 문자열을 사용하는 Scanner 객체를 생성한다.


java.util.Scanner 메소드

void 

close()

Scanner을 닫는다.


boolean

hasNext()

입력값에 다른 토큰(token)이 존재한다면 true를 반환한다.


String

next()

토큰을 찾은 다음 반환한다.


xxx

nextXxx

토큰을 xxx로 반환한다. (xxx에는 기본 데이터형 부터BigDecimal, BigInteger등이 올 수 있다.)


Scanner

UseDelimiter(Pattern pattern)

지정된 패턴을 Scanner의 문자로 설정한다.


Scanner

useDelimiter(String pattern)

지정된 문자열을 Scanner의 구분자로 설정한다.


반응형

'컴퓨터프로그래밍 > JAVA' 카테고리의 다른 글

JAVA - 스레드  (0) 2013.10.16
JAVA - 컬렉션  (0) 2013.10.15
JAVA - 포메팅 구조  (0) 2013.10.14
format(), printf(), split메소드  (0) 2013.10.14
JAVA - 숫자, 통화 클래스  (0) 2013.10.13