Problem mit client.find() und Variable

Hallo in die Runde,

mein Problem ist folgendes:

in meinem Sketch fuktioniert
if (client.find("Artist:")) {...

aber nicht
String ausdruck = "Artist:";
if (client.find(ausdruck)) {...

Weiß jemand, was ich da falsch mache?

Dank und Grüße,
karl_napp

Wenn Du uns einen Link zur Lib gibst, aus der client stammt, könnten wir mal rein schauen.
Evtl. ist find() nicht für String definiert, sondern nur für char-Arrays.

Gruß Tommy

Hallo Tommy,

danke für die Rückmeldung. Die Lib ist ...\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\WiFi.

Wenn Deine Vermutung stimmt, müsste ich den String erst konvertieren.
toCharArray ? Oder gibt es Alternativen?

Gruß, karl_napp

In dem Ordner stehen eine Menge Libs. Da musst Du schon etwas genauer werden.
Du kannst mal ausdruck.c_str() probieren.

Gruß Tommy

Das steckt nicht in der WiFi Klasse, sondern in Stream. Die Doku sagt auch klar dass es nur mit char[] geht.

Also am besten nichts konvertieren sondern gleich richtig machen:

char ausdruck[] = "Artist:";

Das wäre auch mein Weg, aber Du weißt ja, wie die Leute an String kleben.

Gruß Tommy

Edit: Zumal die aktuellen Versionen der Webserver bereits sehr gut die Parameter aufbereiten.

Danke, Eure Antworten sollten mir weiter helfen. Werde es morgen gleich mal ausprobieren.

Viele Grüße
karl_napp