본문 바로가기

JAVA

JAVA(2022.05.26) - Byte단위 입출력

Byte단위 입출력 

 

코드를 통해 살펴보도록 하겠다 

 

FileInputStream > 파일을 읽어오는 객체 

FileOutputStream > 파일에 쓸 수 있게 해주는 객체 

read()메소드는 읽을 값이 있을때는 항상 양수를 , 더 이상 읽을 값이 없을 때 -1을 return한다

public class ByteIOExam1 {
        public static void main(String[] args){     
            FileInputStream fis = null;  //파일을 읽는 객체		
            FileOutputStream fos = null; //파일을 쓰는 객체        
            try {
                fis = new FileInputStream("src/javaIO/exam/ByteExam1.java");
                fos = new FileOutputStream("byte.txt");  //""안에 아무것도 쓰지 않으면 프로젝트 밑에 생성이 됨  

                int readData = -1; //더 이상 읽을게 없으면 -1을 리턴 
                while((readData = fis.read())!= -1){
                 //read()는 한바이트씩 읽으며 int를 return 4바이트 중 마지막 바이트에 읽어들인 한바이트를 저장 
       				fos.write(readData);
              }
           } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }finally{
                try {
                    fos.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block  //닫아주기 위해서 
                    e.printStackTrace();
                }
                try {
                    fis.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block //닫아주기 위해서 
                    e.printStackTrace();
                }
            }
        }
    }

결과로 byte.txt라는 파일에 한바이트씩 읽힌 값들이 생성된다 

 

 

 

 

 

 

 

 

 

 

 

 

*위 게시물은 프로그래머스<자바중급>강의를 보며 복습한 내용을 작성한 글입니다*