본문 바로가기

코딩도전기/I.O.4

CODO Day29_JAVA_NIO(New Input / Output) Java NIO New Input / Output 기존 IO에 Asynchronous와 Channel이라는 개념을 추가 IO NIO I/O Stream Channel Buffer Non-buffer Buffer Asynchronous X(동기방식) O(비동기방식) Blocking(Asynchronous와 비슷함) Blocking Blocking/non-blocking # 동기방식 : 여러개의 동작을 실행시켰을 경우 첫번째 동작이 끝나야 다음 동작이 차례대로 실행되는 것 # 비동기방식 : 순서와 상관없이 여러 동작을 한번에 실행시키는 것 Input / Output Stream을 각각 만들지 않고 하나의 Channel을 활용하거나 Files클래스의 method로 간단히 처리 파일 경로, 정보, 각종 처리 등.. 2023. 3. 14.
CODO Day28_JAVA_I.O(SubStream) 보조 스트림(최상위 클래스(주 스트림)의 하위 클래스) 주 스트림과 연결되어 추가기능을 제공해주는 스트림 사용하고 싶은 추가기능과 관련된 보조 스트림을 추가 보조 스트림은 여러개를 한번에 사용할 수 있음(보통 1~2개 정도) Base 주스트림 서브스트림 Byte Base InputStream FileInputStream BufferInputStream DataInputStream ObjectInputStream OutputStream FileInputStream BufferoutputStream DataoutputStream ObjectoutputStream Character Base Reader FileReader BufferReader DataReader Writer FileWriter BufferW.. 2023. 3. 13.
CODO Day27_JAVA_I.O(Stream/Upload) Input & Output InputStream : 외부에서 파일을 읽어올 때 사용 Input Stream >> read() >> Output Stream > flush()* : (남은 데이터 내보내기) >> close()* : (자원 닫기) OutputStrem : 파일을 외부로 내보낼 때 사용 Reader >> read() >> Writer > flush()* : (남은 데이터 내보내기) >> close()* : (자원 닫기)* # flush()* 해주지 않으면 stream에 데이터가 남아 있어 파일이 정상적으로 실행되지 않을 수 있음 # close()* 해주지 않으면 접근할 수 있는 자원이 점점 줄어들어 서버 속도가 느려지다가 die... InputStream 사용 순서 File 객체에 매개변수로 .. 2023. 3. 10.
CODO Day26_JAVA_I.O(JAVA Input Output) JAVA I.O.(JAVA Input Output) Java에서는 System(STS) 외부의 data를 가져와서 다룰 수도 있음 Stream : system 안과 밖으로 이동하는 Data의 흐름 또는 Data가 흐르는 통로 Java.io package는 크게 InputStream 과 OutputStream이 있음 바이트 기반과 문자 기반으로 분류 JAVA I.O. Byte Base Character Base input output input output 최상위 클래스 InputStream OutputStream Reader Writer 하위 클래스 FileInputStream BufferedInputStream DataInputStream FileOutputStream BufferedOutputStre.. 2023. 3. 9.