Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

한자공/시즌3/20140807: Difference between revisions

From ZeroWiki
imported>healu1423
No edit summary
(Repair batch-0008 pages from live compare)
 
(21 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__TOC__
__TOC__
== 일시 ==
== 일시 ==
8월 7일 폭파 됬지만 자바에 대한 열정으로 인터넷 정리
8월 7일 폭파 인터넷 정리
== 참가자 ==
== 참가자 ==
{| class="wikitable"
{| class="wikitable"
|-
|-
| 유재범
| 유재범
| 참석
| 참석(?)
|-
|-
| 이지수
| 이지수
| 참석
| 참석(?)
|-
|-
| 김용준
| 김용준
| 참석
| 참석(?)
|-
|-
| 김정민
| 김정민
| 참석
| 참석(?)
|}
|}
== 진행 상황 ==
== 진행 상황 ==
* File I/O
* I/O
=== 발표 내용 ===
=== 발표(할) 내용 ===
* 핵심 : 파일 입출력과 스트림
* 핵심 : 파일 입출력과 스트림
* 바이트 스트림 & 문자 스트림
* 바이트 스트림 & 문자 스트림
Line 32: Line 32:
   4. 바이트 스트림, 문자 스트림 두개로 나뉨
   4. 바이트 스트림, 문자 스트림 두개로 나뉨
   
   
  ※ 다음에 나오는 그림들은 모든 스트림을 정리한 것이 아니므로 다른 스트림이 필요하면 구글님께...
  ※ 다음에 나오는 그림들은 모든 스트림을 정리한 것이 아니므로 다른 스트림이 필요하면 API와 구글님께...


'''바이트스트림'''
'''바이트스트림'''
Line 45: Line 45:
                       │                  └ PrintStream
                       │                  └ PrintStream
                       └ ObjectOutputStream
                       └ ObjectOutputStream
 
* Buffered~ : 입출력의 효율을 높이기 위해 버퍼(바이트배열)를 사용하여 쓴다.
* Data~ : byte단위가 아닌, 다른 기본 자료형의 단위로 읽고 쓸수 있게했다.
* PrintStream : printf. println, print 메서드를 오버로딩해서 기능을 제공한다.(System.out.printf)
** PrintWriter이 다양한 언어의 문자를 처리하기 때문에 가능하면 PrintWriter를 권장한다.


'''문자 스트림'''
'''문자 스트림'''
Line 57: Line 60:
  ※ java에서는 C언어와 달리 char형이 2 byte를 기본이기 때문에 문자를 처리하기 힘들다.
  ※ 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. 입력을 계속 기다리는 상태(블러킹 상태)에 머무름
 
== 다음 진행 ==
== 다음 진행 ==
* [[김용준]] 학우의 File I/O 보충 및 발표
* [[김용준]] 학우의 File I/O 보충 및 발표(파일 스트림,직렬화)
== 과제 ==
== 과제 ==
=== 유재범 ===
=== 유재범 ===
Line 71: Line 96:
----
----
[[한자공/시즌3]]
[[한자공/시즌3]]

Latest revision as of 01:40, 27 March 2026

일시

8월 7일 폭파 인터넷 정리

참가자

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

진행 상황

  • I/O

발표(할) 내용

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

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. 입력을 계속 기다리는 상태(블러킹 상태)에 머무름
 

다음 진행

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

과제

유재범

이지수

김용준

김정민

후기


한자공/시즌3