StreamTokenizer

C/Java : 2007. 11. 7. 11:49

* java.io.StreamTokenizer

- 토큰으로 나눔으로써 Reader를 분석하도록 도와주는 유틸리티 클래스

- Reader로부터 반환된 각각의 화이트 문자(공백)로 분리된 문자열을 요청할수 있다.

- 단어단위로 반환하는 것으로 생각할 수 있다.

- Reader 에 끝이 있다면 차례로 반환상태를 토큰으로 분석하고

  StreamTokenizer클래스의 public속성으로 유효한 값을 만든다.


*

//스트림의 끝(EOF)에 도달할 때까지 각각의 토큰을 읽는다.

//StreamTokenizer의 public속성인 sval에 접근, StreamTokenizer에 의해 읽혀진 String값을 검색한다.

import java.io.Reader;
import java.io.FileReader;
import java.io.StreamTokenizer;


public class StreamTokenizerEx {
 public static void main(String[] args) {
  try {
   Reader r = new FileReader("in.txt");
   StreamTokenizer st = new StreamTokenizer(r);
   while(st.nextToken() != StreamTokenizer.TT_EOF) {
    System.out.println(st.sval);
   }
   r.close();
  }
  catch(Exception e) {
   e.printStackTrace();
  }
 }
}
*


같은 폴더안에 in.txt라는 파일을 만들고 내용을 입력한다.

띄어쓰기를 포함한 한 문장을 입력해보자.



TT_EOF : 스트림의 끝을 읽었다는 것을 나타낸다.

TT_EOL : 라인의 끝을 읽었다는 것을 나타낸다.

TT_NUMBER : 숫자 토큰을 읽었다는 것을 나타낸다.

TT_WORD : 워드 토큰을 읽었다는 것을 나타낸다.

Posted by 청웨일