내가 보려고 정리하는/JAVA

File 객체 연습 new File, mkdir, mkdirs, getName, isFile, isDirectory

보동이용용 2022. 12. 30. 09:33
반응형

먼저, c드라이브에 d_other 파일에 test.txt파일을 생성해두었다.

 

 

파일 객체 만들기

1. new File  : 새로 파일 객체 만들기

                    : 디렉토리와 디렉토리, 디렉토리와 파일 사이 구분은  /  또는 \ 로 구분!

// file1 만들기 
//.getName()으로 이름을 얻을 수 있다. 
//.isFile() 파일인지 false, true로 확인,   
//.isDirectory() 폴더인지 false, true로 확인

File file1 = new File("c:\\D_Other\\test.txt");

System.out.println("파일명 : " + file1.getName());
System.out.println("파일일까? : " + file1.isFile());
System.out.println("디렉토리일까? : " + file1.isDirectory() );
System.out.println();

----- 결 과 -----

파일명 : test.txt
파일일까? : true
디렉토리일까? : false

--------------------

 

경로에 들어가보면 test.txt 파일을 미리 만들어두어서 파일이 있다고 한다.

경로를 D_other까지만 쓰면 디렉토리가 true로 나온다.

 

 2. new File(File parent, String child)  :  'parent' 디렉토리 안의 'child'파일을 갖는다.

File file3 = new File(file2, "test.txt");

System.out.println("파일명 : " + file3.getName());
System.out.println("파일일까? : " + file3.isFile());
System.out.println("디렉토리일까? : " + file3.isDirectory() );
System.out.println();

파일 경로를 file2에 객체로 저장하고 넣어서 실행해본다.

 

----- 결 과 -----

파일명 : test.txt
파일일까? : true
디렉토리일까? : false

--------------------

 

======================================================================

디렉토리(폴더) 만들기!

 

위에서는 존재하는 파일이나 폴더를 객체로 받아보았는데 실제로 파일을 만들어볼수도 있다.

mkdir()   은 File 객체의 경로 중 마지막 위치의 디렉토리를 만들어준다.

                반환값도 boolean타입으로 있다. 만들기 성공 여부를 나타낸다.

                 중간의 경로가 모두 있어야 마지막 경로를 만들어줄 수 있다.

 

File file5 = new File("c:/d_other/연습용");
		
	if( !file5.exists() ) {                                             //file5가 있다면
		if(  file5.mkdir() ){                                           // 마지막 경로를 생성해주세요
			System.out.println(file5.getName() + "만들기 성공!!!");
		}else {
			System.out.println(file5.getName() + "만들기 실패~~~");
		}
	}else {
		System.out.println(file5.getName() + "는 이미 있습니다.....");
	}
	System.out.println();

 

그런데 없는 경로까지 포함하여 한꺼번에 만들고 싶다면?

가능하다!

 

mkdirs() 를 사용하면 중간 부분의 경로가 없으면 중간 부분의 경로도 같이 만들어 준다.

File file6 = new File("c:/d_other/test/java/src");
		
	if(!file6.exists()) {
		if( file6.mkdirs()) {
			System.out.println(file6.getName() + "만들기 성공!!!");
		}else {
			System.out.println(file6.getName() + "만들기 실패~~~");
		}
    }else {
		System.out.println(file6.getName() + "는 이미 있습니다.....");
	}

 

실제ㅐ로 경로에 들어가보면 그대로 파일이 생성되어있다.

반응형

'내가 보려고 정리하는 > JAVA' 카테고리의 다른 글

iBatis  (0) 2023.01.13
MVC패턴!  (0) 2023.01.13
동기화 처리가 되어있는 Vector  (0) 2022.12.28
쓰레드로 은행의 입출금 처리하기! (동기화 처리 예제)  (0) 2022.12.28
쓰레드 동기화  (2) 2022.12.28