Método getName() de Java File

Java File Java File

getName()es, en Java,java.io.Fileun método de instancia proporcionado por la clase File, que se utiliza para obtener el nombre del archivo o directorio (sin incluir la información de la ruta). Este método devuelve una cadena que representa la parte del nombre del objeto de archivo.

Sintaxis del método

public String getName()

Valor de retorno

Devuelve una cadena que representa el nombre del archivo o directorio (sin incluir la información de la ruta).

Casos de uso

getName()El método es especialmente útil en los siguientes casos:

  1. Cuando solo necesitas obtener el nombre del archivo sin importar su ruta.
  2. Al extraer nombres de archivo en operaciones con listas de archivos.
  3. Cuando necesitas mostrar o registrar el nombre del archivo.
  4. Al realizar operaciones de cadena relacionadas con el nombre del archivo.

Código de ejemplo

Ejemplo de uso básico

Ejemplo

import java.io.File;

public class GetNameExample {
    public static void main(String[] args) {
        // Crear un objeto File
        File file = new File("C:/Users/Example/Documents/report.txt");
       
        // Usar getName() para obtener el nombre del archivo
        String fileName = file.getName();
       
        System.out.println("Ruta completa: " + file.getPath());
        System.out.println("Nombre del archivo: " + fileName);
    }
}

Resultado

完整路径: C:\Users\Example\Documents\report.txt
文件名: report.txt

Ejemplo con directorios

Ejemplo

import java.io.File;

public class DirectoryNameExample {
    public static void main(String[] args) {
        // Crear un objeto File que apunte a un directorio
        File directory = new File("C:/Program Files/Java");
       
        // Obtener el nombre del directorio
        String dirName = directory.getName();
       
        System.out.println("Nombre del directorio: " + dirName);
    }
}

Resultado

目录名: Java

Detalles técnicos

Principio de implementación

getName()El método funciona de la siguiente manera:

  1. Primero obtiene la cadena de ruta completa.
  2. Luego busca el último separador de ruta (en Windows es '\', en sistemas tipo Unix es '/').
  3. Devuelve la parte de la cadena que está después del separador.

Manejo de separadores de ruta

Java maneja automáticamente las diferencias de separadores de ruta entre los sistemas operativos, por lo que no importa qué separador uses,getName()funcionará correctamente.


Notas

  1. SiFileel objeto representa un directorio raíz (como "C:" o "/"),getName()se devolverá una cadena vacía "".
  2. Este método no comprueba si el archivo o directorio realmente existe.
  3. El nombre devuelto incluye la extensión del archivo (si la hay).
  4. Para rutas relativas, solo se devuelve la última parte de la ruta.

Comparación con otros métodos

getName() vs getPath()

  • getName(): solo devuelve la parte del nombre del archivo o directorio.
  • getPath(): devuelve la cadena de ruta completa utilizada al crear el objeto File.

getName() vs getAbsolutePath()

  • getName(): solo devuelve la parte del nombre.
  • getAbsolutePath(): devuelve la ruta absoluta completa.

Ejemplos de aplicación práctica

Procesamiento por lotes de extensiones de archivo

Ejemplo

import java.io.File;

public class FileExtensionExample {
    public static void main(String[] args) {
        File file = new File("data/archive.zip");
        String name = file.getName();
       
        // Obtener la extensión del archivo
        int dotIndex = name.lastIndexOf('.');
        if (dotIndex > 0) {
            String extension = name.substring(dotIndex + 1);
            System.out.println("Extensión del archivo: " + extension);
        }
    }
}

Resultado

文件扩展名: zip

Recorrer directorios y obtener nombres de archivo

Ejemplo

import java.io.File;

public class ListFilesExample {
    public static void main(String[] args) {
        File directory = new File("C:/Users/Example/Downloads");
       
        // Listar todos los archivos en el directorio
        File[] files = directory.listFiles();
       
        if (files != null) {
            System.out.println("Archivos en el directorio de descargas:");
            for (File file : files) {
                if (file.isFile()) {
                    System.out.println("- " + file.getName());
                }
            }
        }
    }
}

Al dominargetName()el método, podrás manejar más fácilmente la información de nombres de archivos y directorios, proporcionando un soporte básico para las operaciones con archivos.

Java File Java File

Otras extensiones