Hallo Zusammen,
ich würde gerne auf einer SD Karte einzelne Dateien erstellen die die Namen der in dem Array angegebenen Getränke haben. Hierzu möchte ich die Bezeichnungen auf 5 Buchstaben kürzen und anschließend mit der Endung ".txt" versehen.
Leider scheitere ich schon an dem kürzen der Bezeichnungen. Der Code funktioniert soweit ganz gut. Aber wenn ich eine Bezeichnung habe die von Anfang an schon weniger als die 5 Stellen hat funktioniert es nicht mehr richtig.
Folgendes wird ausgegeben:
Zwetschge
Zwetschge
Zwets
Ouzo
Ouzo
Ouzo
Ramazotti
Ramazotti
Ramaz
Es sollte aber ausgegeben werden:
Zwetschge
Zwetschge
Zwets
Ouzo
Ouzo
Ouzo
Blutwurz
Blutwurz
Blutw
Ramazotti
Ramazotti
Ramaz
const char* Getraenk[3][12] = { //Folgend die gewünschten Getränke eingeben. Anzahl muss immer durch 4 Teilbar sein. Wenn nicht möglich, dann mit leerzeichen auffüllen bis durch 4 teilbar.
{"Willi", "Sauerkirsch", "Himbi", "Berliner Luft", "Fernet", "Holunder", "Zwetschge", "Ouzo", "Blutwurz", "Ramazotti", "Ueberraschung", " "},
{"Fanta", "cola", "Spezi", "O-Saft", "A-Saft", "Wasser", "Jo-Ha-Sa", "Sprudel", "Kizeu", "Suesser Sprudel", "Limo", " "},
{"Obstler", "Himbi", "Willi", " ", }, //Spalte3
};
char* text;
const int Anzahlspalten = 3; ///Hier die Anzahl der Menüspalten angeben die auswählbar sind
const int Anzahlzeilen[] = {11, 11, 3,}; ///Hier die Anzahl der Zeilen eingeben. Anzahl eingeben ohne Füllleerzeichen welche in Display auswählbar sein sollen
void setup()
{
Serial.begin(9600);
for (int s = 0; s < Anzahlspalten; s++)
{
for (int z = 0; z < Anzahlzeilen[s]; z++)
{
Serial.println(Getraenk[s][z]);
text = Getraenk[s][z];
Serial.println(text);
text[5] = '\0';
Serial.println(text);
Serial.println();
}
}
}
void loop()
{
}
Kann mir jemand von euch helfen? Vielleicht habt ihr auch noch einen Tipp wie ich die Endung ".txt" anhängen kann.
Gruß und Dank
Axialgeblaese