Diferencia entre revisiones de «File.name()»
De ArduWiki
(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...») |
(→Sintaxis) |
||
(No se muestran 2 ediciones intermedias del mismo usuario) | |||
Línea 4: | Línea 4: | ||
== Sintaxis == | == Sintaxis == | ||
<pre> | <pre> | ||
+ | File archivo = SD.open("archivo.txt", FILE_WRITE); | ||
archivo.name(); | archivo.name(); | ||
</pre> | </pre> | ||
Línea 12: | Línea 13: | ||
== Retorna == | == 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]]). | El nombre del archivo o directorio, o una cadena vacía si la instancia representa un archivo que nunca se abrió ([[char]]* o [[string]]). | ||
− | |||
− | |||
− | |||
== Comentarios == | == Comentarios == | ||
Línea 22: | Línea 20: | ||
* 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). | * 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 == | + | == 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). | ||
+ | |||
+ | == Ejemplo 1 == | ||
<syntaxhighlight lang="c++"> | <syntaxhighlight lang="c++"> | ||
void setup() { | void setup() { | ||
Línea 52: | Línea 53: | ||
} | } | ||
− | void loop() {} | + | void loop() { |
+ | //Nada | ||
+ | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Línea 59: | Línea 62: | ||
== Referencias == | == Referencias == | ||
+ | * [https://www.arduino.cc/en/Reference/FileName Referencias] | ||
+ | |||
[[Category:Libreria SD]] | [[Category:Libreria SD]] |
Revisión actual del 19:18 3 jul 2019
Contenido
Descripción
Retorna el nombre del archivo o directorio.
Sintaxis
File archivo = SD.open("archivo.txt", FILE_WRITE); 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).
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).
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).
Ejemplo 1
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() {
//Nada
}
Vea también