• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

입출력 스트림 질문입니다.

23.05.11 11:12 작성 조회수 167

0

안녕하세요.

FileOutputStream 객체 생성시 질문이 있어서 글 남깁니다.

FileOutputStream fos = new FileOutputStream("output.txt");

이후 try() resource 구문을 쓰는 건 문제가 되지 않는데

처음에 변수 초기화를 시켜주지 않고

FileOutputStream fos = null;

fos = new FileOutputStream("output.txt");

 

위와 같이 작성 후 try resource 구문을 작성하면 에러가 나네요.

해당 원인이 무엇인지 궁금합니다.

감사합니다.

답변 1

답변을 작성해보세요.

2

try-with-resources 문은 두 가지 형식으로 사용할 수 있습니다.

아래와 같이 선언과 대입을 같이 하는 것은 자바 8부터 가능하구요

try(FileInputStream fis = new FileInputStream("input2.txt"))

자바 9부터는 아래와 같이 try 문에 변수만을 사용하는 방법입니다.

FileOutputStream fos = new FileOutputStream("output2.txt");

try(fos){

...

}

위 두가지중 하나의 방법으로 구현하셔야 할듯합니다. 문의하신 내용이 자바 문법에서 제공되지 않아서 오류가 난듯 합니다.