U E D R , A S I H C RSS

한자공/시즌3/20140807

Difference between r1.60 and the current

@@ -2,13 +2,13 @@
== 일시 ==
8월 7일 폭파 인터넷 정리
== 참가자 ==
|| 유재범 || 참석 ||
|| 이지수 || 참석 ||
|| 김용준 || 참석 ||
|| 김정민 || 참석 ||
|| 유재범 || 참석(?) ||
|| 이지수 || 참석(?) ||
|| 김용준 || 참석(?) ||
|| 김정민 || 참석(?) ||
== 진행 상황 ==
* I/O
=== 발표 내용 ===
=== 발표(할) 내용 ===
* 핵심 : 파일 입출력과 스트림
* 바이트 스트림 & 문자 스트림

@@ -61,7 +61,7 @@
}}}
* YJB가 값을 입력 받을때 쓰고 있는 BufferedReader or BufferedInputStream보다 Scanner가 편리하고 용의하다.(JDK 1.5부터 추가)

'''표준입출력 - System.in, System.out, System.err'''
'''표준입출력 - System.in(콘솔 입력), System.out(콘솔 출력), System.err(콘솔 출력)'''
{{{
1. 표준입출력은 콘솔을 통한 데이터 입력과 콘솔로의 데이터 출력을 의미
2. 자바에는 표준 입출력을 위해 3가지 입출력 스트림(System.in, System.out, System.err)을 제공



1. 일시

8월 7일 폭파 인터넷 정리

2. 참가자

유재범 참석(?)
이지수 참석(?)
김용준 참석(?)
김정민 참석(?)

3. 진행 상황

  • I/O

3.1. 발표(할) 내용

  • 핵심 : 파일 입출력과 스트림
  • 바이트 스트림 & 문자 스트림

I/O
input과 Output의 약자 -> 입출력

스트림(Stream)
 1. 데이터를 운반하는데 사용되는 연결통로
 2. 스트림은 FIFO(First In First Out)구조
 3. 단방향통신만 가능 -> 입력스트림(input stream)과 출력스트림(output stream) 2개의 스트림이 존재
 4. 바이트 스트림, 문자 스트림 두개로 나뉨

※ 다음에 나오는 그림들은 모든 스트림을 정리한 것이 아니므로 다른 스트림이 필요하면 API와 구글님께...

바이트스트림
                     ┌ FileInputStream
      ┌- InputStream ┼ FilterInputStream ┬ BufferedInputStream
      │              │                   └ DataInputStream  
      │              └ ObjectInputStream
Object┤
      │               ┌ FileOutputStream
      │               │                   ┌ BufferedOutputStream
      └- OutputStream ┼ FilterOutputSteam ┼ DataOutputStream
                      │                   └ PrintStream
                      └ ObjectOutputStream
  • Buffered~ : 입출력의 효율을 높이기 위해 버퍼(바이트배열)를 사용하여 쓴다.
  • Data~ : byte단위가 아닌, 다른 기본 자료형의 단위로 읽고 쓸수 있게했다.
  • PrintStream : printf. println, print 메서드를 오버로딩해서 기능을 제공한다.(System.out.printf)
    • PrintWriter이 다양한 언어의 문자를 처리하기 때문에 가능하면 PrintWriter를 권장한다.

문자 스트림
                ┌ BufferedReader
      ┌- Reader ┼ InputStreamReader - FileReader
Object┤
      │         ┌ BufferedWriter
      └- Writer ┼ OutputStreamWriter - FileWriter
                └ PrintWriter
 
※ java에서는 C언어와 달리 char형이 2 byte를 기본이기 때문에 문자를 처리하기 힘들다.
   그러므로 문자기반 스트림을 사용하자.
※ InputStream -> Reader
   OutputStream -> Writer
  • YJB가 값을 입력 받을때 쓰고 있는 BufferedReader or BufferedInputStream보다 Scanner가 편리하고 용의하다.(JDK 1.5부터 추가)

표준입출력 - System.in(콘솔 입력), System.out(콘솔 출력), System.err(콘솔 출력)
 1. 표준입출력은 콘솔을 통한 데이터 입력과 콘솔로의 데이터 출력을 의미
 2. 자바에는 표준 입출력을 위해 3가지 입출력 스트림(System.in, System.out, System.err)을 제공
 3. 어플리케이션 실행과 동시에 사용할 수 있게 자동적으로 생성되므로 코드를 작성하지 않고 사용

try 
{// 끝내려면 Enter나 ^Z
  int input = 0;
 
  while(input=System.in.read()) != =1)
    System.out.println("input : "+input+" (char)input : "+(char)input);

} catch(IOException e){}
특징
1. 콘솔입력은 버퍼를 가지고 있기 때문에 Backspace키를 이용해 편집이 가능
2. 크기는 버퍼 크기만큼 입력 가능
3. 입력을 계속 기다리는 상태(블러킹 상태)에 머무름
 

4. 다음 진행

  • 김용준 학우의 File I/O 보충 및 발표(파일 스트림,직렬화)

5. 과제

5.1. 유재범

5.2. 이지수

5.3. 김용준

5.4. 김정민

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:31:31
Processing time 0.0422 sec