Diferencia entre revisiones de «SD.exists()»
De ArduWiki
(→Ejemplo) |
(→Ejemplo) |
||
Línea 34: | Línea 34: | ||
sprintf(nombre, "DATA%04d.CSV", contador); | sprintf(nombre, "DATA%04d.CSV", contador); | ||
while (SD.exists(nombre)) { | while (SD.exists(nombre)) { | ||
− | if (++contador > 9999) { //Si ya se agotaron los cuatro dígitos, no queda de otra que sobrescribir desde la 0000. Lo malo es que esto siempre lo haría si llegara a suceder. | + | 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; | break; |
Revisión del 23:38 5 may 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);
//A este punto ya es cuestión de solamente usar la instancia.
}
void loop() {
///Nada
}