IO
1. 메모리
2. 파일
3. 네트워크
스트림 이용=>데이터 통로(정확한 전송)
단방향(입력/출력통로가 다르다)
-1byte(일반파일):바이트 스트림
InputStream/OutputStream =>인터페이스 => read/write
=>업로드/다운로드
-2byte(문자=>한글가능):문자 스트림
Reader/Writer => 인터페이스
-객체 자체를 저장: 직렬화
ObjectInputStream/ObjectOutputStream
-속도를 빠르게
BufferInputStream/BufferOutputStream
=>XML, JSON, CSV(별도로 파싱하는 방법이 따로 있음) :Web(Spring)
***주의점
1. 반드시 import java.io.*
2. 반드시 예외처리(CheckException)
1. 파일 읽기
FileInputStream(1byte) => 한글이 있는 경우에는 깨짐 / FileReader(2byte)
FileInputStream fis=new FileInputStream("c:\\javaDev\\a.txt"); //절대경로명
while(파일끝까지) => -1(EOF)
{
출력
}
fis.close
======finally=>try/catch에 상관없이 수행
***데이터 읽기
1)한글자 읽기
int read() => 글자번호
A : 65 (char)i
2)여러개 동시에 읽기
int read() : 읽은 바이트 리턴
***데이터 쓰기(저장)
FileOutputStream
write(): 한글자씩 저장
IO
FileInputStream, FileReader
FileOutputStream, FileWriter
BufferedReader/BufferedWriter
ObjectInputStream/ObjectOutputStream
BufferedInputStream/BufferedOutputStream
데이터
정형화 데이터: 오라클(***)
반정형회 데이터: 구분이 된다 =>필요없는 데이터도 존재
html/XML/JSON
비정형화 데이터: 구분이 없이 뒤죽박죽=> 빅데이터 => 지능형 웹
뉴스, 트위터
=> REGEX(패턴)
'Java > Java 이론 정리' 카테고리의 다른 글
[Java] (쓰레드/)annotation (2) | 2020.07.30 |
---|---|
[Java] 30일차: java.util / collection framework (0) | 2020.07.24 |
[Java] 28~29일차: java.lang (1) | 2020.07.22 |
[Java] 예외처리 (1) | 2020.07.20 |
[Java] 21~22일차: 객체지향 3대요소_캡슐화, 상속, 다형성 (0) | 2020.07.13 |
댓글