Cambiar el nombre de un archivo en Java

Mohammad Irfan 12 octubre 2023
  1. Cambiar el nombre de un archivo usando el método renameTo() en Java
  2. Cambiar el nombre de un archivo usando el método move() en Java
  3. Cambiar el nombre de un archivo usando el método move() en Java
  4. Cambiar el nombre de un archivo usando la biblioteca Apache commons en Java
Cambiar el nombre de un archivo en Java

Este tutorial presenta cómo cambiar el nombre de un archivo en Java y enumera algunos códigos de ejemplo para que pueda comprender mejor el tema.

Cambiar el nombre de un archivo en Java es bastante fácil ya que Java proporciona varios métodos integrados en el paquete java.io. Podemos utilizar estos métodos para cambiar el nombre de un archivo y comprobar también otras operaciones de archivo. En este artículo, usaremos el método renameTo() de la clase File, el método move() de la clase Files y la biblioteca común Apache para cambiar el nombre del archivo.

Cambiar el nombre de un archivo usando el método renameTo() en Java

En este ejemplo, estamos usando la clase File para obtener la instancia del archivo, y luego, usando el método renameTo(), cambiamos el nombre del archivo. Este método devuelve una IOException, por lo que debe usar un bloque try-catch adecuado para manejar la excepción. El método renameTo() devuelve un valor booleano, ya sea verdadero o falso, que se puede usar para verificar si un archivo se renombra correctamente.

import java.io.File;
import java.io.IOException;
public class SimpleTesting {
  public static void main(String[] args) throws IOException {
    File file1 = new File("abc.txt");
    File file2 = new File("abcd.txt");
    if (file2.exists())
      throw new java.io.IOException("file exists");
    boolean success = file1.renameTo(file2);
    if (success) {
      System.out.println("File Rename successfuly");
    } else
      System.out.println("File is not Rename");
  }
}

Producción :

File Rename successfuly

Cambiar el nombre de un archivo usando el método move() en Java

Este método es otra solución para cambiar el nombre de un archivo. Aquí, usamos el método move() de la clase Files, que se puede usar para cambiar el nombre de un archivo. Vea el ejemplo a continuación:

import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class SimpleTesting {
  public static void main(String[] args) {
    try {
      Path source = Paths.get("/file-location/abc.txt");
      Files.move(source, source.resolveSibling("/file-location/abcd.txt"));
    } catch (Exception e) {
      System.out.println(e);
    }
  }
}

Cambiar el nombre de un archivo usando el método move() en Java

El método move() tiene un método de sobrecarga que toma una ruta de archivo como segundo parámetro. Por lo tanto, si desea mover un archivo a otra ubicación después del proceso de cambio de nombre, puede establecer este parámetro en la llamada a la función.

import java.io.File;
import java.nio.file.Files;
public class SimpleTesting {
  public static void main(String[] args) {
    try {
      File newFile = new File(new File("/file-location/abc.txt").getParent(), "abcd.txt");
      Files.move(new File("/file-location/abc.txt").toPath(), newFile.toPath());
    } catch (Exception e) {
      System.out.println(e);
    }
  }
}

Cambiar el nombre de un archivo usando la biblioteca Apache commons en Java

Si está trabajando con la biblioteca Java commons Apache, puede utilizar el método moveFile() de la clase FileUtils. Consulte el programa de ejemplo aquí:

import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
public class SimpleTesting {
  public static void main(String[] args) {
    File file = new File("/file-location/abc.txt");
    String newName = "abcd.txt";
    String newFilePath = file.getAbsolutePath().replace(file.getName(), "") + newName;
    File newFile = new File(newFilePath);
    try {
      FileUtils.moveFile(new File("/file-location/abc.txt"), newFile);
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

Artículo relacionado - Java File