Diferencia entre revisiones de «SD.mkdir()»

De ArduWiki
Saltar a: navegación, buscar
(Página creada con «== Descripción == Crea un directorio (carpeta) o toda una ruta (jerarquía). Para esto último, automáticamente se crea cualquier directorio faltante que la conforma. ==...»)
 
(Vea también)
 
(No se muestran 4 ediciones intermedias del mismo usuario)
Línea 20: Línea 20:
  
 
<syntaxhighlight lang="c++">
 
<syntaxhighlight lang="c++">
 +
#include <SPI.h>
 +
#include <SD.h>
  
 
void setup() {
 
void setup() {
 
   Serial.begin(9600);
 
   Serial.begin(9600);
  // Inicializamos la tarjeta por supuesto
+
  Serial.print("Inicializando SD...");
 +
  if (!SD.begin(chipSelect)) {
 +
      Serial.println("SD fallo, esta puesta ?");
 +
      while (1);
 +
  }
 +
  Serial.println("SD lista.");
 +
  char ruta[50];
  
  char ruta[50];
+
  // Algunos nombres fueron recortados para respetar el límite de 8 caracteres. Si fuera el caso, se podrían abreviar por las tres primeras letras.
 +
  char mes[12][] = {"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Setiembr", "Octubre", "Noviembr", "Diciembr"};
  
  // Algunos nombres fueron recortados para respetar el límite de 8 caracteres. Si fuera el caso, se podrían abreviar por las tres primeras letras.
+
  for (unsigned int anio=1990; anio<=2019; anio++) {
  char mes[12][] = {"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Setiembr", "Octubre", "Noviembr", "Diciembr"};
+
      for (byte m=0; i<12; i++) {
 +
        sprintf(ruta, "Imagenes/%d/%s", anio, mes[m]);
 +
        if (SD.mkdir(ruta)) {
 +
            Serial.print("La ruta ");
 +
            Serial.print(ruta);
 +
            Serial.print(" se ha creado con éxito!");
 +
        }else {
 +
            Serial.print("La ruta ");
 +
            Serial.print(ruta);
 +
            Serial.print(" no se ha podido crear!");
 +
        }
 +
      }
 +
  }
 +
}
  
  for (unsigned int anio = 1990; anio <= 2019; anio++) {
+
void loop() {
 
+
  //Nada
    for (byte m = 0; i < 12; i++) {
+
}
      sprintf(ruta, "Imagenes/%d/%s", anio, mes[m]);
 
 
 
      if (SD.mkdir(ruta)) {
 
        Serial.print("La ruta ");
 
        Serial.print(ruta);
 
        Serial.print(" se ha creado con éxito!");
 
      } else {
 
        Serial.print("La ruta ");
 
        Serial.print(ruta);
 
        Serial.print(" no se ha podido crear!");
 
      } // Fin if-else
 
    } // Fin del segundo for
 
  } // Fin del primer for
 
 
 
} // Fin de la función
 
 
 
void loop() {}
 
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
== Vea también ==
 
== Vea también ==
* [[SD]]
+
<categorytree mode=all>Libreria SD</categorytree>
* [[SD.open()]]
 
  
 
== Referencias ==
 
== Referencias ==
 +
* [https://www.arduinolibraries.info/libraries All Libraries]
 +
* [http://www.arduino.cc/en/Reference/SD SD]
 +
 +
[[Category:Libreria SD]]

Revisión actual del 16:40 17 may 2019

Descripción

Crea un directorio (carpeta) o toda una ruta (jerarquía). Para esto último, automáticamente se crea cualquier directorio faltante que la conforma.

Sintaxis

SD.mkdir(ruta);

Parametros

ruta
carpeta o ruta que se pretende crear (string o String). Esta siempre será relativa a la raíz; en otras palabras, siempre será absoluta para efectos del sistema de archivos.

Retorna

true si se pudo crear, false en caso contrario (bool). Si falla, es por error de hardware o porque el "volumen" está lleno.

Advertencias

Nada.

Ejemplo

Creamos una separación (en carpetas) de imágenes según el año de obtención, desde el 1990 hasta el año que se creó esta página (2019). Cada año estará separado por sus meses.

#include <SPI.h>
#include <SD.h>

void setup() {
  Serial.begin(9600);
   Serial.print("Inicializando SD...");
   if (!SD.begin(chipSelect)) {
      Serial.println("SD fallo, esta puesta ?");
      while (1);
   }
   Serial.println("SD lista.");
   char ruta[50];

   // Algunos nombres fueron recortados para respetar el límite de 8 caracteres. Si fuera el caso, se podrían abreviar por las tres primeras letras.
   char mes[12][] = {"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Setiembr", "Octubre", "Noviembr", "Diciembr"};

   for (unsigned int anio=1990; anio<=2019; anio++) {
      for (byte m=0; i<12; i++) {
         sprintf(ruta, "Imagenes/%d/%s", anio, mes[m]);
         if (SD.mkdir(ruta)) {
            Serial.print("La ruta ");
            Serial.print(ruta);
            Serial.print(" se ha creado con éxito!");
         }else {
            Serial.print("La ruta ");
            Serial.print(ruta);
            Serial.print(" no se ha podido crear!");
         }
      }
   }
}

void loop() {
   //Nada
}

Vea también


Referencias