Reference Language | Libraries | Comparison | Changes
SD : File class
openNextFile()
Reports the next file or folder in a directory.
Syntax
file.openNextFile()
Parameters
file: an instance of the File class that is a directory
Returns
char : the next file or folder in the path
Example
#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()
{
// nothing happens after setup finishes.
}
void printDirectory(File dir, int numTabs)
{
while (true)
{
File entry = dir.openNextFile();
if (! entry)
{
if (numTabs == 0)
Serial.println("** Done **");
return;
}
for (uint8_t i = 0; i < numTabs; i++)
Serial.print('\t');
Serial.print(entry.name());
if (entry.isDirectory())
{
Serial.println("/");
printDirectory(entry, numTabs + 1);
}
else
{
Serial.print("\t\t");
Serial.println(entry.size(), DEC);
}
entry.close();
}
}
See Also
Reference Home
Corrections, suggestions, and new documentation should be posted to the Forum.
The text of the Arduino reference is licensed under a
Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.