Nur Dateiname aus URL auslesen
-
Hallo
Ich benutze den BCB5
Hat jemand eine Ahnung wie ich ohne walk-around den Dateinamen aus einem
URL extrahiere?Beispiel:
URL ist: http://SeiteXY.com/Datei.jpg
Ich möchte aber nur Datei.jpg extrahieren.[cpp]
Datei=ExtractFileName("http://SeiteXY.com/Datei.jpg");
[/cpp]
Ergebnis: Datei="//SeiteXY.com/Datei.jpg"Funktioniert also nicht (wohl weil die Slashes nach rechts zeigen)
Hoffe jemand kann mir helfen...
Habe durch Suche hier nichts gefunden.
Danke in Voraus!
Brother Luis
-
Einfach vor dem Extrahieren die Slashes umkehren? Z.B. mittels AnsiReplaceStr(...). Der eigentliche Inhalt wird dadurch ja nicht verändert. Entsprechende Unit nicht vergessen.
-
Ich weiß nicht, ob ich die Frage richtig verstanden habe. Willst du einfach nur den String parsen, dass der Dateiname übrig bleibt?
std::string ExtractFileName(std::string url) { return url.substr( url.rfind("/")+1); }
-
Danke für die schnelle Hilfe, DasD
Aber ich habe es jetzt durch dieses "Monster" gelöst:
Datei=url.SubString(url.LastDelimiter("/")+1,url.Length()- url.LastDelimiter("/"));Danke nochmal
Brother Luis
-
Danke auch an Dich, masterofx32
-
Kein Monster sondern die exakt gleiche Funktion welche auch gepostet wurde. Nur mit dem AnsiString statt dem STL String...
-junix
-
Kein Monster sondern die exakt gleiche Funktion welche auch gepostet wurde. Nur mit dem AnsiString statt dem STL String...
ok,ok...
"Monster" weil ich eine Funktion "ExtractUrlFileName" vermisse, die so einfach zu "füttern" ist wie "ExtractFileName"...
