Diferencia entre revisiones de «SD.exists()»
De ArduWiki
(Y esta página si me dejó crearla, que rayos?) |
(→Ejemplo) |
||
(No se muestran 8 ediciones intermedias de 2 usuarios) | |||
Línea 11: | Línea 11: | ||
== Retorna == | == Retorna == | ||
− | '''true''' si el elemento existe en dicha ubicación, '''false''' en caso contrario. | + | '''true''' si el elemento existe en dicha ubicación, '''false''' en caso contrario ([[bool]]). |
== Advertencias == | == Advertencias == | ||
Línea 19: | Línea 19: | ||
Similar al ejemplo 2 de [[SD.open()]], solo que utilizando esta función. | Similar al ejemplo 2 de [[SD.open()]], solo que utilizando esta función. | ||
<syntaxhighlight lang="c++"> | <syntaxhighlight lang="c++"> | ||
+ | #include <SPI.h> | ||
+ | #include <SD.h> | ||
+ | |||
File archivo; | File archivo; | ||
void setup() { | void setup() { | ||
− | + | if (!SD.begin(chipSelect)) { | |
− | + | Serial.println("SD fallo, esta puesta ?"); | |
− | + | while (1); | |
− | + | } | |
− | + | Serial.println("SD lista."); | |
− | + | char nombre[13]; | |
− | + | unsigned int contador = 0; | |
− | + | sprintf(nombre, "DATA%04d.CSV", contador); | |
− | + | while (SD.exists(nombre)) { | |
− | + | if (++contador > 9999) { //Si ya se agotaron los cuatro dígitos, no queda de otra que sobrescribir desde la 0000. | |
− | + | contador = 0; //Lo malo es que esto siempre lo haría si llegara a suceder. | |
− | sprintf(nombre, "DATA%04d.CSV", contador); | + | sprintf(nombre, "DATA%04d.CSV", contador); |
− | + | break; | |
− | + | } | |
+ | sprintf(nombre, "DATA%04d.CSV", contador); | ||
+ | } | ||
+ | archivo = SD.open(nombre, FILE_WRITE | O_TRUNC); | ||
+ | } | ||
− | + | void loop() { | |
− | + | //A este punto ya es cuestión de solamente usar la instancia. | |
− | |||
− | |||
− | |||
} | } | ||
− | |||
− | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== Vea también == | == Vea también == | ||
− | + | <categorytree mode=all>Libreria SD</categorytree> | |
− | |||
== Referencias == | == Referencias == | ||
+ | |||
+ | |||
+ | [[Category:Libreria SD]] |
Revisión actual del 19:27 3 jul 2019
Contenido
Descripción
Verifica si la ruta hacia cierto elemento (archivo o carpeta) realmente existe.
Sintaxis
SD.exists(ruta);
Parametros
- ruta
- ruta hacia el archivo o carpeta que se pretende verificar, o sólo el nombre para ubicarlo en la "raíz" (string o String).
Retorna
true si el elemento existe en dicha ubicación, false en caso contrario (bool).
Advertencias
Nada.
Ejemplo
Similar al ejemplo 2 de SD.open(), solo que utilizando esta función.
#include <SPI.h>
#include <SD.h>
File archivo;
void setup() {
if (!SD.begin(chipSelect)) {
Serial.println("SD fallo, esta puesta ?");
while (1);
}
Serial.println("SD lista.");
char nombre[13];
unsigned int contador = 0;
sprintf(nombre, "DATA%04d.CSV", contador);
while (SD.exists(nombre)) {
if (++contador > 9999) { //Si ya se agotaron los cuatro dígitos, no queda de otra que sobrescribir desde la 0000.
contador = 0; //Lo malo es que esto siempre lo haría si llegara a suceder.
sprintf(nombre, "DATA%04d.CSV", contador);
break;
}
sprintf(nombre, "DATA%04d.CSV", contador);
}
archivo = SD.open(nombre, FILE_WRITE | O_TRUNC);
}
void loop() {
//A este punto ya es cuestión de solamente usar la instancia.
}
Vea también