본문 바로가기
Spec UP - Backend/나도코딩의 자바기본편

chap_13. 파일/폴더 다루기

by TIS_Ha 2023. 7. 13.
반응형

Java를 통하여 파일을 만들고 정보를 불러오는 방법을 학습해보자.

file.createNewFile() 을 통해 파일을 생성한다.(이미 해당 파일이 존재하는 경우 생성하지 않음)

file.exists() 파일 존재 유무를 확인한다.

file.getName() 파일의 이름을 불러온다.

file.getAbsolutePath() 파일의 절대 경로를 불러온다.

file.getLength() 파일의 크기 Byte 를 불러온다.


이번시간에는 폴더에 대하여 학습해보자.

folder.mkdir() 을 통해 해당 폴더를 생성한다.

folder.mkdirs() 를 통해 하위폴더를 생성할 수 있다.

 


 

filesAndFolders.listFiles() 를 통해 해당 경로 내에 파일/폴더 리스트를 확인할 수 있다.

 

file.isFile() 이나 .isDirectory() 를 이용해 파일과 폴더를 구분하여 리스트를 확인할 수도 있다.

 

Copy Path/Reference를 이용해 절대경로를 복사해 지정하거나, 상대경로를 지정할 수 있다.


이번에는 파일을 읽고 쓰는 방법에 대하여 학습해보자.

BufferedWriter 은 파일에 내용을 쓸때 사용한다.

bw.writer()를 통해 내용을 입력하고, bw.newLine()을 통해 줄바꿈을 할 수 있다.

위 코드를 실행 후 goodjob.txt 파일을 열어보면 위와 같이 내용이 입력된 것을 확인할 수 있다.

 

만약 기존 파일에 내용을 추가하고 싶은 경우에는 아래와 같이 할 수 있다.

위와 같이 fileWriter("goodjob.txt","true") 로 append 값을 true로 설정하면 기존 파일에 내용만 추가할 수 있다.

만약 true를 입력하지 않는 경우 기존 파일내용이 삭제되고 덮어쓰기로 처리된다.

 

이번에는 파일을 읽어와서 출력하도록 만들어보자.

FileReader를 통해 해당 파일을 불러오고 br.readLine()을 통해 한줄씩 내용을 읽어와서 출력하도록 하였다.

 


이번에는 파일과 폴더를 삭제하는 방법을 알아보자.

file.delete()를 통해 파일을 삭제할 수 있다.

이 때 파일의 존재 유무에 따라 delete()를 실행할 수 있도록 if문으로 구현하였다.

 

폴더를 삭제할 때에도 folder.delete()를 이용해 폴더를 삭제할 수 있다.

단 .delete() 문은 해당 폴더가 비어있는 상태여야만 가능하다.

 

폴더가 비어있지 않은 상태에서 하위폴더까지 전체삭제를 하도록 구현해보자.

위와 같이 반복문을 통해 하위폴더로 접근하여 하위폴더부터 순차적으로 전체 폴더를 삭제할 수 있다.

반응형

'Spec UP - Backend > 나도코딩의 자바기본편' 카테고리의 다른 글

chap_13. 출력  (0) 2023.07.12
chap_13. 입력  (0) 2023.07.11
chap_12. 동기화  (0) 2023.07.11
chap_12. Thread와 Runnable, Join, MultiThread  (0) 2023.07.11
chap_11. 예외처리미루기(Throws)  (0) 2023.07.10

댓글