带有SD.h文件类型的`fprintf`

时间:2012-10-22 10:06:37

标签: arduino sd-card printf

我正在使用SD.h库用Arduino Uno写入SD卡。我需要在文件中写出一个模板字符串,其中一些占位符由某些值替换,以printf的方式行事。我会使用fprintf函数,但是当我尝试这个时:

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

我收到了这个错误:

  

无法将参数'1'的'File *'转换为'__file *'为'int   fprintf(__ file *,const char *,...)'

我该如何管理?

1 个答案:

答案 0 :(得分:3)

printf()使您的可执行对象大1000字节,因此如果大小有问题,您可能不想使用它。

fprintf不打算与SD.h一起使用,所以我想

我想到的简单解决方案是使用sprintf格式化文本,然后使用println函数将其写入文件

File dataFile = SD.open("myfile.txt", FILE_WRITE);
char text[100];
sprintf(text,"My number: %d",yournumber);
dataFile.println(text);