Hallo Ich stehe vor dem Problem das ich für eine SD karte den Datei namen jeden Tag ändern möchte. Das Datum ist nicht das Problem. viel mehr das ändern der String kette für den namen. Einer meiner letzten gemachten versuche war wie folgt: char Dateiname [] = "0000000.CSV"; char zahl = (0); void setup() { Serial.begin(9600); if (!SD.begin(4)) { Serial.println("Karte nicht erkannt"); while (1); } Serial.println("Karte ok"); } void loop() { delay(1000); zahl++; Dateiname [0] = '1'; Dateiname [1] = zahl; Dateiname [2] = '3'; Dateiname [3] = '4'; Dateiname [4] = '5'; Dateiname [5] = '6'; Dateiname [6] = '7'; Serial.println(Dateiname); File dataFile = SD.open(Dateiname, FILE_WRITE); if (dataFile) { dataFile.println(Dateiname); delay(50); dataFile.close(); Serial.println(Dateiname); } else { Serial.println("Kann nicht gelesen werden"); } Leider wird die variable zahl nicht angenommen und endet als undefiniertes Zeichen. (134567.CSV) oder oder als 1%34567.CSV Hat Jemand eine hilfreiche Idee wie ich das einfach lösen kann ? Ich habe schon versucht die variable zahl als folat und char zuspeichern ändert aber nix. Und ja ich weiß das es nach 9 überlaufen würde aber so weit kommt es ja noch nicht. Hilfe ?? Danke
Der wahnsinn ! Ich sitz 2 tage an dem mist und ich hätte nur das ergänzen müssen ? hmm toll! Vielen lieben dank scheint zu gehen.
Vielleicht in Anlehnung and das hier?
1 | sprintf (Dateiname, "%06d.CSV", zahl); |
und diesen Mist hier weglassen?
1 | Dateiname [0] = '1'; |
2 | Dateiname [1] = zahl; |
3 | Dateiname [2] = '3'; |
4 | Dateiname [3] = '4'; |
5 | Dateiname [4] = '5'; |
6 | Dateiname [5] = '6'; |
7 | Dateiname [6] = '7'; |
Adam Riese schrieb: > sprintf (Dateiname, "%06d.CSV", zahl); Ja so was habe ich schon oft gelesen ich verstehe aber nicht wie % und die 06 oder gar das d da entstehen ? Kann das jemand mal Entschlüssen ? Was da genau gemacht wird ? Vielen dank
DAVID -. schrieb: > Kann das jemand mal Entschlüssen ? Das macht du gefälligst selbst indem du ein C-Lehrbuch liest.
DAVID -. schrieb: > Kann das jemand mal Entschlüssen Google: man sprintf Das sind uuralte C-Lib Funktionen, wenn man die nicht kennt sollte man sich ein Buch über die Programmiersprache C besorgen und lesen. C ist nicht freundlich zu Anfängern und Einsteigern - Literatur Studium ist Pflicht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.