我正在使用Arduino库。我想从传感器记录一些数据,日期时间戳记它并将其写入SD卡。将字符串转换为使用Arduino类型的const char *
要建立我已经试过
String dataFileName = String(String(sedClock.getTime().year(),DEC) +
String(sedClock.getTime().month(),DEC) +
String(sedClock.getTime().day(),DEC) +
String(sedClock.getTime().hour(),DEC) +
String(sedClock.getTime().minute(),DEC) +
String(sedClock.getTime().second(),DEC) + '_log.txt');
话,我想用
pinMode(SD_PIN,OUTPUT);
dataFile = SD.open(dataFileName,FILE_WRITE);
,但我得到
no matching function call to SDClass::open(String&, int)
candidates are: File SDClass::open(const char*,uint_8)
登录到该文件中的文本文件名,但似乎该Arduino字符串不具有相当于
(const char *) dataFileName.c_str()
所以我无法弄清楚如何做正确的转换
任何帮助将不胜感激。
使用str.length()+ 1获取长度字符串。例如:char __dataFileName [dataFileName.length()+ 1]; dataFileName.toCharArray(__ dataFileName,sizeof(__ dataFileName)); – Guihgo 2015-07-16 18:18:44