logo

Java를 사용하여 폴더의 모든 파일 이름을 바꾸는 방법은 무엇입니까?

카메라 폴더에서 사진을 분석하려는 작업 공간으로 파일을 전송할 때 긴 파일을 처리하고 코드를 통해 테스트할 때 반복해서 입력하는 것이 어려워집니다. 또한 파일 수가 너무 커서 각 파일의 이름을 수동으로 바꿀 수 없습니다. 따라서 이름 바꾸기 프로세스를 자동화하는 것이 필요합니다.

사용자 이름

이 기사에서 우리는 배울 것입니다 Java를 사용하여 폴더의 모든 파일 이름을 바꾸는 방법.

예: 다음과 같은 파일 이름이 있을 수 있습니다.



폴더에 50개의 파일이 있다고 가정합니다.

'C:사용자Anannya UberoiDesktopmy폴더':

스냅샷 1 (12-05-2025 11-57).webp

스냅샷 2 (12-05-2025 11-57).webp

스냅샷 3 (12-05-2025 11-57).webp

스냅샷 4(12-05-2025 11-57).webp 등.

이러한 파일의 이름을 수동으로 바꾸는 대신 간단한 Java 프로그램을 사용하여 폴더에 있는 모든 파일의 이름을 바꿀 수 있습니다. 이렇게 하면 파일 이름을 다음과 같은 더 쉬운 이름으로 바꿀 수 있습니다. 1.웹 2.웹 그리고 3.웹.

이제 이를 Java에서 어떻게 구현하는지 살펴보겠습니다.

문제:

다음과 같은 이름의 파일이 많이 있습니다.

스냅샷 1 (12-05-2025 11-57).webp

스냅샷 2 (12-05-2025 11-57).webp

스냅샷 3 (12-05-2025 11-57).webp


우리는 그것들의 이름을 아래와 같이 바꾸는 것을 목표로 합니다:

1.웹프

2.웹프

3.웹프

Java를 사용하여 폴더의 모든 파일 이름 바꾸기

해결책:

이 문제를 해결하기 위해 우리는 폴더의 각 파일을 살펴보고 이름을 간단한 일련 번호로 바꾸고 파일 확장자를 다음과 같이 유지하는 작은 Java 프로그램을 작성하겠습니다. .webp 또는 .webp .

예:

Java
// Java program to demonstrate  // how to rename all files import java.io.File; import java.io.IOException; public class Geeks {    public static void main(String[] args) throws IOException {    // Set the folder path where your files are located  String folderPath = 'C:\Users\Anannya Uberoi\Desktop\myfolder';  // Create a File object for the folder  File folder = new File(folderPath);  // Get a list of all files in the folder  File[] files = folder.listFiles();  // Check if there are any files in the folder  if (files != null) {  int counter = 1;  // Loop through all files in the folder  for (File file : files) {    // Check if it's a file (not a folder)  if (file.isFile()) {  String fileName = file.getName();  String fileExtension = '';  // Extract the file extension (e.g. .webp .webp)  int dotIndex = fileName.lastIndexOf('.');  if (dotIndex > 0) {  fileExtension = fileName.substring(dotIndex);  }  // Create the new file name (e.g. 1.webp 2.webp etc.)  String newFileName = counter + fileExtension;  // Create a new File object with the new file name  File renamedFile = new File(folderPath + '' + newFileName);  // Rename the file  if (file.renameTo(renamedFile)) {  System.out.println('Renamed: ' + fileName + ' -> ' + newFileName);  } else {  System.out.println('Failed to rename: ' + fileName);  }  // Increment the counter for the next file  counter++;  }  }  } else {  System.out.println('No files found in the directory.');  }  } } 

산출:

분할 오류 코어가 덤프되었습니다.
Renamed: Snapshot 1 (12-05-2025 11-57).webp -> 1.webp  
Renamed: Snapshot 2 (12-05-2025 11-57).webp -> 2.webp
Renamed: Snapshot 3 (12-05-2025 11-57).webp -> 3.webp

설명: 이 예에서는 먼저 파일이 저장된 폴더 경로를 정의한 다음 해당 폴더에서 파일을 검색한 다음 각 파일을 반복하여 파일 확장자를 추출해야 합니다. 각 파일에 대해 카운터를 기반으로 새 이름을 만들고 파일 이름을 바꿉니다. 파일 이름을 바꾼 후 이름이 바뀐 파일을 인쇄하거나, 실패가 발생하면 이름 바꾸기가 성공하지 못했다고 인쇄합니다.

중요한 사항:

  • 폴더에 파일이 없으면 프로그램은 '디렉터리에서 파일을 찾을 수 없습니다'라는 메시지를 통해 알려줍니다.
  • 파일 이름을 바꾸지 못하면 프로그램은 해당 파일에 대한 오류 메시지를 인쇄합니다.
  • 이 프로그램은 파일에 대해서만 작동하며 하위 폴더는 무시합니다. 폴더에 하위 폴더가 있으면 이름이 바뀌지 않습니다.
퀴즈 만들기