名称
File::openNextFile()
説明
次のファイルもしくはフォルダをオープンする。
書式
File File::openNextFile(uint8_t mode);
引数
mode | オープンするファイルのモード。以下の2種類がある(オプション)。 |
| FILE_READ: 読み込み専用。ファイルの最初から開始(読み込み)される。 |
| FILE_WRITE: 読み書きモード。ファイルの最後から開始される。 |
戻り値
オープンしたファイルを参照するファイルオブジェクト。
(訳者註)オリジナルのリファレンスはcharを返すと書いているが、ソースコードや例を見る限り、Fileオブジェクトを返却している。
使用例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
#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();
}
}
|
オリジナルのページ
https://www.arduino.cc/reference/en/libraries/sd/opennextfile/
最終更新日
January 7, 2024