PDA

Visualizza la versione completa : [C++]funzione trim


cerza
24-03-2014, 17:49
Salve,
ho un

const char *filename
che contiene il percorso di un file.txt, ad un certo punto vorrei cambiare il nome di questo file in file2.txt che funzione potrei usare?
perch se uso strcat_s il risultato file.txt2
Grazie tante in anticipo.

oregon
24-03-2014, 17:59
Salve,
ho un

constchar *filename
che contiene il percorso di un file.txt, ad un certo punto vorrei cambiare il nome di questo file in file2.txt che funzione potrei usare?
perch se uso strcat_s il risultato file.txt2
Grazie tante in anticipo.

E che c'entra la trim?

In ogni caso, mi sfugge come assegni la prima stringa ...

cerza
24-03-2014, 18:40
Grazie per la risposta,

filename = "C:\percorso\file.txt"
viene passato ad una funzione come input.
Dopo di che vengono usate le seguenti funzioni



strcpy_s(filename2, MAX_PATH, filename);
strcat_s(filename2, MAX_PATH, "2");


ma praticamente la strcat_s concatena il 2 dopo il .txt, mi serviva quindi una funzione che mi permettesse ti trovare il nome del file, aggiungere il 2 al nome.
Probabilmente ora pi chiaro
Grazie

oregon
24-03-2014, 19:49
filename2 un array di char?

Ovviamente la strcat fa quello per cui prevista ovvero concatenare stringhe.
Dato che l'estensione inserita nella variabile filename, il 2 verr aggiunto dopo l'estensione.

Prova a passare solamente il nome del file e concatena il 2 e il .txt nella funzione

P.S. Continui a non rispondere sulla trim ... che nel titolo del thread ...

cerza
25-03-2014, 11:18
Allora la trim inserita in oggetto pensavo fosse la funzione che io dovevo usare per separare il nome del file dalla sua estensione e chiedevo aiuto su questo.
In merito a filename2 questi un char*

oregon
25-03-2014, 11:47
Allora la trim inserita in oggetto pensavo fosse la funzione che io dovevo usare per separare il nome del file dalla sua estensione e chiedevo aiuto su questo.

Scusa, ma da cosa hai dedotto che la trim facesse quello che dici? Quale documentazione/libro utilizzi?


In merito a filename2 questi un char*

Non puoi usare un semplice puntatore senza allocare la memoria per la stringa ... sbagliato e il programma potrebbe darti errori in maniera non prevedibile.

Scusa, puoi mostrare tutto il codice coinvolto invece di rispondere con mezza riga?

Loading