파일 입출력
Stream이라는 연결통로를 통해 원본 데이터가 알맞는 인코딩 방식으로 전송된다.
byte 단위로 입출력되기 땜눈에 개별처리이며, 상세 연산이 필요하지 않다면
Buffer를 사용한 입출력을 권장한다. Buffer를 사용하면 일괄처리가 가능해진다.
※ 인코딩 방식
인코딩 방식은 완성형과 조합형이 있다.
- 완성형 : 각, 간, 갇, 갈, 감, ... , 갛, ...
- 조합형 : ㄱ + ㅏ + ㄱ
조합형이 효율적이며 byte 단위로 데이터를 전송할 때 고정된 byte가 아니기 때문에 가변형 인코딩 방식을 선호한다.
조합형이면서 가변형인 인코딩 방식은 UTF-8이며, 전 세계에서 가장 많이 사용되는 방식이다.
Writer(출력)
BufferedWriter: 버퍼를 사용한 출력 클래스
FileWriter: 전달한 경로의 파일을 출력하기 위한 목적으로 열어준다.
전달한 경로에 파일이 없다면 새롭게 만든 후 열어준다.
FileWriter 선언 방법
FileWriter writer = new FileWriter(경로/파일명, 이어쓰기 옵션);
BufferedWriter 선언 방법
// 위에 FileWriter를 선언한 상태라고 가정
BufferedWriter bw = new BufferedWriter(writer);
Writer 메소드
메소드 | 설명 |
int write(char) | 단일 문자 출력 |
int write(char[]) | 매개변수로 주어진 배열의 모든 문자 출력 |
int write(String) | 문자열을 매개변수로 주어진 문자열 출력 |
int write(char[], int offset, int len) | 매개변수로 주어진 배열에 정해진 범위만큼 읽어서 출력 시작 위치(offset), 길이(len) |
void flush() | 출력 버퍼에 잔류하는 모든 내용 출력 |
close() | 스트림 사용을 종료하고 자원 반환 |
Reader(입력)
BufferedReader : 버퍼를 사용한 입력 클래스
FileReader : 전달한 경로의 파일을 입력하기 위한 목적으로 열어준다.
전달한 경로에 파일이 없다면 새롭게 만든 후 열어준다.
FileReader 선언 방법
FileReader reader = new FileReader(파일경로);
BufferdReader 선언 방법
// 위에 FileReader를 선언했다고 가정
BufferedReader br = new BufferedReader(reader);
Reader 메소드
메소드 | 설명 |
int read() | 1개의 문자를 읽고 반환 더 이상 읽을 문자가 없으면 -1을 반환 |
int read(char[] cbuf) | 매개변수로 주어진 배열에 읽은 문자를 저장하고 읽은 수만큼 반환 더 이상 읽을 문자가 없으면 -1을 반환 |
int read(char[] cbuf, int offset, int len) | 매개변수로 주어진 배열에 정해진 범위만큼 읽어서 저장 시작위치(offset), 길이(len) |
close() | 스트림 사용을 종료하고 자원을 반환 |
File(파일 정보)
전달한 경로에 있는 파일의 정보를 담는 타입
디렉터리 생성, 해당 경로의 전체 파일 목록, 파일 삭제 등
'JAVA > JAVA 정리' 카테고리의 다른 글
[JAVA] MVC 패턴을 활용하여 결합도 낮추기 (0) | 2023.06.07 |
---|---|
[JAVA] MVC 패턴 (0) | 2023.06.06 |
[JAVA] 스레드 (0) | 2023.06.02 |
[JAVA] 컬렉션 프레임워크 (List 컬렉션, Set 컬렉션) (0) | 2023.06.01 |
[JAVA] 예외처리방법 예제 (try catch) (2) | 2023.05.31 |