1939/01/28 BA 76 55 48 85 71
fino ad avere solo... i numeri... separati da virgola?
76,55,48,85,71
THANKSSS
![]()
1939/01/28 BA 76 55 48 85 71
fino ad avere solo... i numeri... separati da virgola?
76,55,48,85,71
THANKSSS
![]()
In generale tu hai sempre delle stringhe in questo formato?
Io non so usare il c++, ma conoscendo un pò il c ti posso dire che basterebbe spostare il puntatore nella locazione dopo le lettere BA, e poi scorrere il vettore e sostituire lo spazio con la virgola... non so se mi sono spiegato
Usi la funzione
memcpy
per copiare la parte finale della stringa all'inizio (includendo il terminatore null).
E poi, usando un ciclo e un puntatore agli spazi nella stringa, assegni il carattere ','
A te la scrittura del codice ...
No MP tecnici (non rispondo nemmeno!), usa il forum.
Ho creato un secondo file estrazioni2.txt contenente solo i numeri voluti... separati da virgola...ma con ancora qualcosa da ottimizzare... ovvero...
il file è qualcosa di questo tipo:
,58,22,47,49,69
,18,77,33,62,19
,68,65,41,28,67
ecc...
io dovrei:
1) ANNULLARE i 15 spazi tra una combinazione e l'altra...
2) RIMUOVERE la virgola iniziale
3) AGGIUNGERE alla fine di ciascuna combinazione un ";"
GRAZIE infinite a chi mi da una mano in questa pulizia... finale...![]()
![]()
E come si fa se non si vede il codice che hai usato per generare quell'output?
No MP tecnici (non rispondo nemmeno!), usa il forum.
//prova sostituzione spazi..........
//string subs;
const char* ptr;
char* found;
int start = 0;
ptr = subs;
ptr = (char*) ptr;
found = (char*)ptr;
while((found = strpbrk(found, " ")) != NULL) {
*found = '-';
found = (char*) ptr;
}
//----------------------------------
//prova seconda sostituzione...
//string subs;
const char* ptr2;
char* found2;
int start2 = 0;
//cout << "Inserire il testo: ";
//cin >> subs;
ptr2 = subs;
ptr2 = (char*) ptr2;
found = (char*)ptr2;
while((found2 = strpbrk(found, " ")) != NULL) {
*found2 = '\n';
found2 = (char*) ptr2;
}
while((found2 = strpbrk(found, "-")) != NULL) {
*found2 = ',';
found2 = (char*) ptr2;
}
//-----------------------------------
![]()
Scusa ...... ma dove scrivi su disco?
No MP tecnici (non rispondo nemmeno!), usa il forum.
//....
ofstream pippo;
pippo.open("estrazioni2.txt", ios:ut);
pippo << ptr2;
//.....
![]()
Scusa ma non riesco assolutamente a seguire il tuo codice ... ti avevo suggerito una semplice
memcpy
seguita da un semplice ciclo for ma tu hai usato altro e, ripeto, non capisco perche' ...
No MP tecnici (non rispondo nemmeno!), usa il forum.
con memcpy per vedere come funziona ma non ci sno riuscito...
Mi sembra di aver capito solo... che questa funzione copia parte della
stringa o del file ma non so assolutamente come utilizzarla...
per il mio scopo... :master: