Приветствую Вас ГостьПятница, 10.05.2024, 22:19

AVR & ARDUINO




Каталог статей

Главная » Статьи » Справочник

Метод File openNextFile()

Описание

Метод объекта File возвращает имя следующего файла или папки в пределах директории.

Синтаксис

file.openNextFile();
file.openNextFile(mode);

Параметры

file - экземпляр класса FIle (возвращаемый функцией SD.open()).

mode (не обязательный параметр) - режим открытия файла, по умолчанию - FILE_READ - byte. Может принимать одно из следующих значений:

FILE_READ: открыть для чтения с начала файла.

FILE_WRITE: открыть для чтения или записи в конец файла.

Возвращаемые значения

Объект File, ссылающийся на открытый файл; если файл открыть не удалось, возвращаемый объект будет эквивалентен значению false (в логическом смысле). Т.е. значение, возвращаемое этой функцией, можно анализировать с помощью условного оператора if

Пример:

#include <SD.h>

File root;

void setup()
{
 Serial.begin(9600);
 pinMode(10, OUTPUT);

 SD.begin(10);

 root = SD.open("/");

 printDirectory(root, 0);

 Serial.println("done!");
}

void loop()
{
 // после первоначальной настройки ничего не происходит.
}

void printDirectory(File dir, int numTabs) {
 while(true) {

 File entry = dir.openNextFile();
 if (! entry) {
 // больше нет файлов
 //Serial.println("**nomorefiles**");
 break;
 }
 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);
 }
 }
}

Смотрите также:

isDirectory()

rewindDirectory()

SD.open()


Библиотека SD

Справочник

Материалы взяты с официального сайта проекта Arduino и представлены по лицензии Creative Commons Attribution-ShareAlike 3.0 License.



Источник: http://www.arduino.cc/en/Reference/FileOpenNextFile
Категория: Справочник | Добавил: magi (08.05.2015)
Просмотров: 2021 | Теги: библиотека, File, файл, SD | Рейтинг: 0.0/0
Всего комментариев: 0
avatar
Поиск
Вход на сайт
На правах рекламы

Мы переезжаем на сайт Arduino по-русски