zerteilen
-
Hi wie kann ich folgendes am besten in einzelne strings teilen
:c:\programme\testapp\artist - titel.mp3
c:\programme\testapp2\artist.-.titel.html
c:\programme\testapp3\artist_-_titel.mp3ich bräuchte nur die files gesplittet...das heist ab dem letzten backslash.
mein problem ist das ich einen gesamten ablauf brauche...und der soll schauen ob
" - " oder ".-." oder "-" enthalten sind und dann nach dem letzten punkt alles löscht.
-
hmm also mach es doch mit std::string
std::string file_name("c:\programme\testapp\artist - titel.mp3"); std::string::size_type pos = file_name.find_last_of('\\'); if (pos != std::string::npos) file_name = file_name.substr(pos + 1);Also wenn er '\' findet, steht in file_name dann am Ende nur das hinter '\' und sonnst alles was vorher auch drin stand.
-
hi...
danke für die antwort...aber das ist glaube ich c++builde-code...oder??
-
Das ist kein C++-Builder Code. Das ist reines C++ mit STL ... musst nur den Header <string> includieren, falls er bei dir meckert
Und sonnst zeig die Fehlermeldungen ... wenn du was in C haben willst ... dann sag das dann schreib ich dir da was 
-
hi (D)Evil...
danke dir...währe super nett wenn du was in c schreiben könntest...

-
Naja guck dir halt einmal strrchr an ... damit solltest du eigentlich weiter kommen ...
-
also so in etwa
#include <cstring> #include <cstdio> char text[] = "C:\\Programme\\TestApp\\Artist - Titel.mp3"; char* pText = strrchr(text, '\\'); if (pText == NULL) return 0; printf("%s", ++pText);so?
-
hi could somebody help me to complete this??
char * Path; char * Artist1; char * Titel1; Path = "texno parade - cocain"; Titel1 = strstr(Path, " - "); strncpy(Artist1 ???? MessageBox (NULL, Artist1, 0, MB_ICONERROR); MessageBox (NULL, Titel1, 0, MB_ICONERROR); return 0;
-
Wenn wir schon WinAPI machen:
Insbesondere dürfte PathFindFileName hier passen.
-
Hi WebFritzi...
Mit PathFindFileName habe ich schon gearbeitet...jetzt habe ich aber schonmal einen string vorgegeben um etwas übersicht zu behalten. Mit strstr habe ich auch schon den Titel...jetzt fehlt mir halt bloß noch der Artist.
-
so habs mal ein wenig abgeändert...
mein problem is jetzt aber noch das nach dem angegeben string noch komische zeichen mit drin sind.
char * Path;
char * Titel1;
char * Artist1;
Path = "t - cocain.mp3";
Titel1 = strstr(Path, " - ");
MessageBox (NULL, Titel1+3, 0, MB_ICONERROR);
int test4 = strlen(Path) - strlen(Titel1);
Artist1 = (char*)malloc(test4);
free(Artist1);
strncpy(Artist1, Path, Titel1-Path);
MessageBox (NULL, Artist1, 0, MB_ICONERROR);
-
@moes: dein Code hat keinen Sinn... du allokierst einen Speicherbereich ... gibst ihn dann wieder frei ohne etwas zu tun und kopiert dann da noch was rein ... obwohl er nicht mehr allokiert ist ..