2018년 3월 24일 토요일

Java char, String 형식 입출력

  • char단위 입출력 클래스는 클래스 이름이 Reader나 Writer로 끝난다.
    • char단위 입출력 클래스를 이용해서 키보드로 부터 한줄 입력 받아서 콘솔 출력
    • System.in - 키보드 입력을 의미 (InputStream )
    • BufferedReader - 한줄씩 입력 받기위한 클래스
    • BufferedReader 클래스의 생성자는 InputStream을 입력받는 생성자가 없다.
    • System.in은 InputStream 타입이여서 BufferedReader의 생성자에 바로 들어갈 수 없으므로 InputStreamReader 클래스를 이용
  • java.io.InputStreamReader/ OutputStreamWriter
    • InputStream/OutStream 클래스의 경우는 byte 단위의 읽기와 쓰기에 사용
    • Java의 Char 와 String의 타입의 경우 Characters로 취급
    • Char / String를 저장하려면 char 단위로 읽고 쓰는 Reader 와 Writer를 사용해야하는데 byte 단위로 데이터를 읽어 Char형태로 변화하여 연결고리 역활을 하는 클래스가 InputStreamReader 와 OutputStreamWriter 이다.
    import java.io.BufferedReader;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.PrintWriter; 
    public class CharIOExam01 {
        public static void main(String[] args) {
            BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
            //키보드로 입력받은 문자열을 저장하기 위해 line변수를 선언               
            String line = null;     
            try {
                line = br.readLine()
            } catch (IOException e) {
                e.printStackTrace();
            }
            //콘솔에 출력 
            System.out.println(line);
        }
    }
Share:

0 개의 댓글:

댓글 쓰기