개발자 미니민의 개발스터디

[JAVA] 자바 - 파일 정보/파일명/경로 등 출력하기 (+폴더 만들기/지우기/폴더 이름변경)

by mini_min
[JAVA]
자바 - 파일 정보/파일명/경로 등 출력하기 (+폴더 만들기/지우기/폴더 이름변경)

✔️ 자바 콘솔에서 파일 정보 출력하기

✨ File.separator : 경로 구분자이다.

✨ getProperty : 작업 경로를 가져올 수 있다.

 

String appDir = System.getProperty("user.dir");
		System.out.println("현 작업 경로 : " + appDir);
		
		String pathname = appDir + File.separator + "ex.txt";
		// File.separator : 경로 구분자. 윈도우 :\, 리눅스:/ 
		
		File f = new File(pathname);
		if(!f.exists()) {
			System.out.println(pathname + "파일이 존재하지 않습니다.");
			System.exit(0);
		}
		
		try {
			System.out.println("파일 정보... ");
			System.out.println("파일 명.." + f.getName()); //파일명.확장자 
			System.out.println("경로 명.. " + f.getPath()); //경로\파일명.확장자
			System.out.println("절대경로.. " + f.getAbsolutePath()); 
			System.out.println("표준경로.. " + f.getCanonicalPath());
			System.out.println("부모경로.. " + f.getParent()); // 경로
			System.out.println("파일길이 (long형) :" + f.length()+"byte");
			System.out.println("파일이 만들어진 날짜 : " + new Date(f.lastModified()));
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
			String s = sdf.format(new Date(f.lastModified()));
			System.out.println("파일이 만들어진 날 " + s);
			System.out.println("파일 읽기 속성 : " + f.canRead());
			System.out.println("파일 쓰기 속성 : " + f.canWrite());

 

 

 

✔️ 자바에서 파일 만들기 

✨ f.mkdir(); // 상위 폴더가 없으면 만들어지지 않음!

✨ f.mkdirs(); // 상위 폴더가 없으면 상위 폴더도 만든다.

String pathname = "C:" + File.separator + "ex" + File.separator + "test";
		
		try {
			File f = new File(pathname);
			
			if(! f.exists()) {
				//폴더만들기
				//f.mkdir(); // 상위 폴더가 없으면 만들어지지 않음!
				f.mkdirs(); // 상위 폴더가 없으면 상위 폴더도 만든다.
				System.out.println("폴더를 생성했습니다.");
			}
			System.out.println(pathname);
			
		} catch (Exception e) {
			e.printStackTrace();
		}

 

 

 

✔️ 자바에서 파일 지우기 

✨ 파일 또는 폴더는 한 번에 하나씩만 지울 수 있고, 폴더는 비어있어야 삭제 가능하다.

String pathname = "C:" + File.separator + "ex" + File.separator + "test";
		File f = new File(pathname);
		
		if(! f.exists()) {
			System.out.println(pathname + "파일 또는 폴더가 존재하지 않습니다.");
			System.exit(0);
		}
		
		boolean b = f.delete();
		if(b) {
			System.out.println("삭제완료");
		}
		else {
			System.out.println("삭제실패");
		}

 

 

 

✔️ 자바에서 폴더명 바꾸기

String appDir = System.getProperty("user.dir");
		String pathname = appDir + File.separator + "ex.txt";
		
		File f = new File(pathname);
		if(!f.exists()) {
			System.out.println(pathname + " : 파일이 존재하지 않습니다... ");
			return;
		}
		
		
        
		// 확장자
		String ext = pathname.substring(pathname.lastIndexOf(".")); // .txt
		String newName = String.format("%1$tY%1$tm%1$td%1$tH%1$tM%1$tS", Calendar.getInstance());
 		newName += System.nanoTime() + ext;
 		
 		try {
			String newPath = appDir + File.separator + newName;
			File dest = new File(newPath);
			f.renameTo(dest);
			
			System.out.println("파일명 변경 완료..");
 			
 			
		} catch (Exception e) {
			e.printStackTrace();
		}
💡 newName 는 새로운 이름
ext 는 확장자인 txt 가 온다.

String newPath = appDir + File.separator + newName;
File dest = new File(newPath); 선언하여 
renameTo 사용합니다~

 

 

 

 

 

 

블로그의 정보

개발자 미니민의 개발로그

mini_min

활동하기