ESP32 Mail Client
|
06.02.2021, 13:35
Beitrag #9
|
|||
|
|||
RE: ESP32 Mail Client
Hab's mit einem Char-Array mit folgendem Code hin bekommen:
Code: String strmessage = "This message contains " + String(picturecount) + " attachment files."; Dachte ich mir doch gleich, dass man, um das zu lösen keine 10.000 Zeilen Sketch-Code ins Netz stellen muss ![]() |
|||
06.02.2021, 15:09
Beitrag #10
|
|||
|
|||
RE: ESP32 Mail Client
Um das richtig zu Lösen nimmt man snprintf und nicht die Krücke mit den Strings.
Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
06.02.2021, 15:57
Beitrag #11
|
|||
|
|||
RE: ESP32 Mail Client
(06.02.2021 13:35)stefan.hild@t-online.de schrieb: Hab's mit einem Char-Array mit folgendem Code hin bekommen: Tja, damit hast du irgendeine Lösung - mit den damit verbundenen Nachteilen. Das Dilemma mit den Strings ist, dass wenn man verstanden hat wie man sie nutzt ohne sich damit später ins Knie zu schießen braucht man sie (meist) nicht mehr. |
|||
06.02.2021, 16:07
(Dieser Beitrag wurde zuletzt bearbeitet: 06.02.2021 16:08 von stefan.hild@t-online.de.)
Beitrag #12
|
|||
|
|||
RE: ESP32 Mail Client
Gefällt mir auch besser, hab es jetzt so gecodet:
Code: char arrtextcontent[100]; Habe versucht bei snprintf direkt das Ziel-Array "message.text.content" anzugeben, dann wäre es ja nochmals kompakter, aber das hat er leider nicht akzeptiert. Es scheint wohl bei den Objekten des "EPS32 Mail Client" auch so zu sein, dass generell mit Zeiger (also Adressen) auf die Felder gearbeitet wird. Das führt dann z.B. dazu wenn man in einer Schleife das Objekt "SMTP_Attachment att" mit Werten füllt, am Ende beim Senden immer der letzte gefüllte Wert gesendet wird. Das führt dann dazu dass immer das letzte Attachment gesendet wird. Folglich muss man für jedes Attachment redundante Code-Zeilen verwenden, was nicht so schön ist. |
|||
06.02.2021, 16:19
(Dieser Beitrag wurde zuletzt bearbeitet: 06.02.2021 16:20 von amithlon.)
Beitrag #13
|
|||
|
|||
RE: ESP32 Mail Client
Hallo,
auf einem ESP32 mache ich selbst mir relativ wenig Sorgen wegen Stringnutzung. Ich habe mir die Mail-Lib noch nicht angeschaut, aber reicht statt: Code: char arrmessage[50]; Code: message.text.content = strmessage.c_str(); Gruß aus Berlin Michael |
|||
06.02.2021, 16:45
Beitrag #14
|
|||
|
|||
RE: ESP32 Mail Client
Hallo Michael,
hat funktioniert, vielen Dank! Die Lösung gefällt mir nun richtig gut! String-Verarbeitung in python ist wohl nicht so einfach und wie man im Beitrag sieht, kennen noch lange nicht alle die Möglichkeiten. Gruß Stefan |
|||
06.02.2021, 16:55
Beitrag #15
|
|||
|
|||
RE: ESP32 Mail Client
Erstens arbeiten wir nicht in Python und zweitens bist Du hier in dem Thread der Einzige, der die Möglichkeiten nicht kennt, weil Dir wesentliche Grundlagen fehlen.
@Amithlon: Klar gibt es mit Sting auf dem ESP weniger Probleme, aber für formatierte Ausgaben halte ich die printf-Familie immer noch als die vielseitigste Lösung. Die Lösung mit c_str() hatte ich bereits in #7 angeregt, das wurde aber vom TO ignoriert. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
06.02.2021, 18:18
Beitrag #16
|
|||
|
|||
RE: ESP32 Mail Client
So, du Schlaumeier, warum bist du denn nicht auf die Idee von Michael gekommen?
|
|||
|
|
Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste