File.name()
De ArduWiki
Revisión del 06:34 2 jul 2019 de Lucario448 (Discusión | contribuciones) (Página creada con «== Descripción == Retorna el nombre del archivo o directorio. == Sintaxis == <pre> archivo.name(); </pre> == Parámetros == Nada. == Retorna == El nombre del archivo o...»)
Contenido
Descripción
Retorna el nombre del archivo o directorio.
Sintaxis
archivo.name();
Parámetros
Nada.
Retorna
El nombre del archivo o directorio, o una cadena vacía si la instancia representa un archivo que nunca se abrió (char* o string).
Advertencias
- El retorno debe considerarse como una cadena de sólo lectura, de lo contrario se corre el riesgo de corromper la instancia (o incluso más allá todavía).
Comentarios
- Cerrar el archivo no borra esta información; por lo tanto, permanece accesible aún después de explícitamente haber ordenado el cierre. Cabe aclarar que si el archivo no se logró abrir desde el principio, este dato se halla vacío.
- Si la instancia fue creada mediante SD.open(), se retornará una copia (truncada a 12 caracteres) del nombre ingresado en el primer parámetro (la ruta no forma parte del nombre).
- Si la instancia fue creada mediante File.openNextFile(), se retornará la versión 8.3 del nombre del archivo/directorio en cuestión. Si el archivo/directorio fue creado mediante un sistema con soporte para LFN (ej.: un PC), el nombre retornado aquí podría parecer extraño si se violó alguna regla de los nombres 8.3. Por ejemplo: Mis frases favoritas.txt podría aparecer como MISFRA~1.TXT.
- La versión mejorada de esta librería (SdFat) hace esta función "obsoleta", sugiriendo que se utilice getName() en su lugar (por la añadida compatibilidad con LFN).
Ejemplo
void setup() {
// Inicializaciones
File raiz = SD.open("/");
if (!raiz) {
Serial.println("Error de apertura");
return;
}
Serial.println("Archivos en la raiz:");
File actual;
while ((actual = raiz.openNextFile())) {
Serial.print(actual.name());
Serial.print("\t\t\t");
if (actual.isDirectory()) {
Serial.println("Directorio");
} else {
Serial.print(actual.size());
Serial.println(" bytes");
}
actual.close();
}
}
void loop() {}
Vea también