1

我正在使用库通过Arduino UnoSD.h写入 SD 卡。我需要在文件中写出一个模板字符串,其中一些占位符被某些值替换,以行为的方式。我会使用这个功能,但是当我尝试这个时:printffprintf

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

我收到了这个错误:

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

我该如何管理?

4

1 回答 1

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);
于 2012-10-22T12:14:47.097 回答