String bearbeiten
-
Hi, ich habe in Problem, und zwar hab ich ein einer Variable einen String stehen:
"Name: Peter" nun möchte ich "Name: " rausfiltern, also das ich danach nurnoch "Peter" in der Variable stehen habe.mein kläglicher Versuch:
FILE *namefile; namefile = fopen ("C:\\name.txt", "r"); if (namefile != NULL) { fscanf (namefile, "%70c",name); fclose (namefile); } DeleteFile("C:\\name.txt"); name.replace("Name: ", "");
ABer da gibts compilier fehler, dass ist auch das einzigste was ich finden konnte.
Könnte mir jemand sagen, wie man das nun richtig filtern kann?
Danke schonmal,
mfg fnord
-
Hallo,
"name.replace("Name: ", "");" geht nicht, da es C Code ist. Kopier doch einfach alles ab dem 6. Zeichen in einen neuen String. Strcpy oder Strncpy sind deine Freunde
-
da muss ich aber zugeben, dass ich erst vor kurzem mit C angefangen habe und ich nun nicht richtig weiss wie ich das machen soll, mit strcpy hab ich zwar schon strings in eine variable kopiert und mit strcat schon strings an eine variable angehangen, aber wie ich etwas ab der 6ten stelle in eine variable speichern soll, weiss ich jedoch nich :<
mfg
-
Achso, ok.
int main(int argc, char **argv) { char input[70]; char name[64]; FILE *namefile; namefile = fopen ("C:\\name.txt", "r"); if (namefile != NULL) { fscanf (namefile, "%70c", input); fclose (namefile); } DeleteFile("C:\\name.txt"); //name.replace("Name: ", ""); strcpy(name, input + 6); return 0; }
Hab' hier gerade kein Compiler aber müsste funktionieren..
-
Hi, danke hatte schon ne lösung trotzdem danke :>
mfg
-
sscanf wäre vielleicht auch interessant gewesen.
-
Oder memmove().