Char array e String

Ragazzi qualcuno potrebbe aiutarmi? Devo scrivere su di una sd un file avente come nome il giorno più il mese+l'anno. Per la data utilizzo la libreria RTClib. Ho provato a utilizzare direttamente un char array, ma non ci sono riuscito. Allora ho provato a lavorare con le stringhe per poi convertirle in char array. Funziona tutto a parte che il giorno e mese me li stampa come carattere vuoto e stranamente l'anno lo stampa bene.

Ho provato con una cosa del genere:

String giorno,mese,anno,data;

giorno = now.day(),DEC; mese = now.month(),DEC; anno = now.year(),DEC; data = giorno+mese+anno;

char filename[10]; data.toCharArray(filename,10);

Graziee

Non conosco la classe String quindi non so se il tuo concatenamento è corretto o meno, ma ricorda che non sei in ambiente javascript quindi l'operatore "+" non funziona tra le stringhe. In C standard se hai

char str1[20] = "ciao", *str2 = " mondo!";

puoi concatenarle con

strcat(str1, str2);

(strcat si trova in string.h) il risultato è "ciao mondo!"

oppure puoi fare

char buff[20], str1 = "ciao", str2 = "mondo!";
sprintf(buff, "%s %s", str1, str2);

ma visto che la funzione sprintf è abbastanza pesante è meglio usarla solo se necessario. Ciao

Per usare gli oggetti String devi usare queste funzioni http://arduino.cc/en/Reference/StringObject Non puoi fare un mix XD Ciao