1

ライブラリを使用して、 ArduinoUnoSD.hでSDカードに書き込みます。動作の仕方で、プレースホルダーを特定の値に置き換えたテンプレート文字列をファイルに書き出す必要があります。私は関数を使用しますが、これを試したとき:printffprintf

File dataFile = SD.open("myfile.txt", FILE_WRITE);
fprintf(dataFile, "mynumber: %d\n", 100);

このエラーが発生しました:

引数「1」の「File*」を「__file*」に変換できません。「intfprintf(__ file *、const char *、...)」

どうすればこれを管理できますか?

4

1 に答える 1

3

printf() を使用すると、実行可能オブジェクトが最大 1000 バイト大きくなるため、サイズが問題になる場合は使用しないことをお勧めします。

fprintfSD.hで使用することを意図していないので、私は思う

私の頭に浮かぶ簡単な解決策は、sprintfを使用してテキストをフォーマットし、println関数でファイルに書き込むことです

File dataFile = SD.open("myfile.txt", FILE_WRITE);
char text[100];
sprintf(text,"My number: %d",yournumber);
dataFile.println(text);
于 2012-10-22T12:14:47.097 に答える