⭐자바 입출력 I/O
input/output
데이터를 읽고 쓰는 기능을 제공한다
파일, 네트워크, 콘솔 등 다양한 소스와 대상 간 데이터를 주고받는다.
먼저 I/O 시스템은
크게 네 가지 주요 구성 요소로 나눈다
✨ 바이트 기반 스트림
✨ 문자 기반 스트림
✨ 버퍼링 스트림
✨ 필터 스트림
⭐ 스트림이란?
stream
데이터를 순차 처리하는 연속된 데이터 요소의 흐름이다
추상적인 매개체로서 입출력 작업을 수행한다
스트림을 통해
키보드로 데이터를 받을 수 있고
파일을 통해서도 데이터를 받을 수 있다.

예제)
자바에서
표준입출력은
프로그램과 사용자 사이에서
기본적 데이터 교환 방법을 제공한다
public class MySystemIn {
public static void main(String[] args) {
/* 표준 입출력에 대해 살펴본다
키보드, 모니터
System.in
System.out
System.err */
//키보드 입력
System.out.println("알파벳 하나를 쓰고 엔터키를 누르시오");
int i; //입력된 바이트를 저장할 변수
try {
/* System.in.read() 는 키보드에서 1바이트를 읽어
ASCII 코드로 반환해준다.
단, 한글은 3바이트라 안된다
입력하면 깨진문자나 의미없는 정수값을 출력한다 */
i = System.in.read();
//읽은 바이트의 정수값을 출력하라
System.out.println(i);
//형변환
System.out.println((char)i);
} catch (IOException e) {
//입력중 오류발생시 스택 트레이스 출력
e.printStackTrace();
throw new RuntimeException(e);
}//try-catch
}//main
}//class

예제2)
입력스트림이란
키보드에서 프로그램으로 데이터가 들어오는 것
기능을 확장해보자
public class MySystemIn2 {
public static void main(String[] args) {
System.out.println("알파벳을 여러개쓰고 Enter!");
int i;
try {
// 키보드에서 Enter는 \n 으로 표현된다.
while ((i = System.in.read()) != '\n') {
//읽은 바이트의 정수값을 출력
System.out.print("i:"+i);
System.out.println("="+(char)i);
}
} catch (IOException e) {
throw new RuntimeException(e);
}//try-catch
}//main
}//class

바이트 기반 입력스트림 예제)
https://notion6780.tistory.com/95
java) java 파일 입력스트림, 출력스트림 예제
예제)txt 파일로부터 입력스트림을 받아봤다.public class MyFileInputStream { public static void main(String[] args) { //파일을 바이트 단위로 읽어들이는 방법 FileInputStream in = null; int readData; try { in = new FileInputStr
notion6780.tistory.com
'Java' 카테고리의 다른 글
| java IO) - 문자 기반 스트림 (1) | 2025.05.29 |
|---|---|
| java) java IO - 파일 입력스트림 & 출력스트림 예제 (1) | 2025.05.28 |
| java) gradle로 라이브러리 불러오기(lombok, jdbc) (0) | 2025.05.26 |
| java) gradle, 한글 사용을 위해 유니코드 불러오기 (0) | 2025.05.26 |
| java) gradle 적용 방법. intellij프로젝트 생성 (0) | 2025.05.26 |