본문 바로가기

연습문제/JAVA

JAVA - FileExample2번

import java.io.FileInputStream;
import java.io.IOException;

//p 478 479
//예제의 의도 : 파일의 컨텐츠를 어떻게 핸들링
?
public class FileInputStreamTest {

//FileInputStream 테스트

public static void main(String[] args) {
FileInputStream fIn=null;

try{
// C, C++ : 메모리에 객체를 적재 명령을 하면, 런타임에서 해당 객체를 다 쓰고 난 뒤에 '해제'하는 코드를 넣어야한다
// Java : GARBEGE COLLECTOR (쓰레기 수집기) : new Instance(); 객체를 메모리에 적재하고 GC '알아서'메모리 해제
// C, C++
에서 해야하는 해제 작업을 안해도 된다
fIn = new FileInputStream("C:\\javaExample\\JavaCorePractice\\FileExample3\\demo\\test.txt");
//메모리(RAM) 자원을 고정해서 점유
//FileEx1과 다르게 파일의 내용을 어떻게 핸들링 할것인가
?
}

 


catch (IOException io){

//문제발생시 빨리 알수있게 해주는 장치라고 이해

//File을 정식적으로 읽지 못했다면 IOException이 발생
//
파일을 찾았으나 읽지 못했을 경우


io.printStackTrace();     //호출하면 로그에 Stack trace가 출력
}

int var_read = -1;

try{
while((var_read = fIn.read()) !=-1){
//결과값이 -1인지 아닌지 : 입력되는 값이 -1이 돌면 빠져나간다


System.out.print((char)var_read);
}
}
catch (IOException io){
io.printStackTrace();
}


//try 블록에서 예외발생이 되던 안되던 실행되는 블록 finally
finally {
try{
fIn.close();      //자원반납
}
catch(IOException io){
io.printStackTrace();
}
}
}
}

 

보기 힘들수도 있으니 사진도 준비했다

'연습문제 > JAVA' 카테고리의 다른 글

Java- FileExample4번 (p487)  (0) 2021.08.13
JAVA - FileExample3번  (0) 2021.08.13
JAVA - FileExample1번  (0) 2021.08.13
Java InterfacePractice2 (인터페이스 예제2 - 0811)  (0) 2021.08.11
Java ExtendsPractice(상속예제 0811)  (0) 2021.08.11