File.openNextFile()

De ArduWiki
Revisión del 16:02 3 jul 2019 de Kike GL (Discusión | contribuciones) (Referencias externas)

Saltar a: navegación, buscar

Descripción

Es el método principal para crear la instancia de la clase File (fichero/archivo) o directorio (carpeta) dentro de la tarjeta SD; con este se interactúa directamente sobre ellos.

Tip: También se puede usar el método SD.open().


Sintaxis

File variable = SD.openNextFile(nombre, modo);

Parámetros

variable
Nombre de variable a instanciar.
nombre
Nombre de archivo SFN (8.3). Ejemplo log12345.txt.
modo
Puede ser FILE_WRITE o FILE_READ

Advertencias

Ejemplo

#include <SD.h>
File root;

void setup(){
  Serial.begin(9600);
  pinMode(10, OUTPUT);
  SD.begin(10);
  root = SD.open("/");
  printDirectory(root, 0);
  delay(2000);
  Serial.println();
  Serial.println("Rewinding, and repeating below:" );
  Serial.println();
  delay(2000);
  root.rewindDirectory();
  printDirectory(root, 0);
  root.close();
}

void loop(){
  //Nada
}

void printDirectory(File dir, int numTabs){
   while (true){
      File archivo = dir.openNextFile();
      if (!archivo){
         if (numTabs == 0){
            Serial.println("** Listo **");
         }
         return;
      }
      for (byte i=0; i<numTabs; i++){
         Serial.print('\t');
      }
      Serial.print(archivo.name());
      if (archivo.isDirectory()){
         Serial.println("/");
         printDirectory(archivo, numTabs + 1);
      }else{
         Serial.print("\t\t");
         Serial.println(archivo.size());
      }
      archivo.close();
   }
}

Vea también


Referencias externas