View Full Version : [C++] cancellare riga da file
DArK_N3tWoRk
02-02-2009, 19:41
Ciao a tutti.
Ho un problema con un programma che sto facendo in C++, vorrei sapere come si fa a cancellare l'ultima riga da un file (oppure solo l'ultimo carattere), so che i file di testo per loro natura rendono difficili queste operazioni, io vorrei sapere se si può fare con i file di testo o se devo necessariamente operare su file binari.
Vi ringrazio per la pazienza, è tutto. :D
Rinomini il vecchio file, ne scrivi uno con lo stesso nome iniziale saltando l'ultimo carattere o l'ultima linea.
DArK_N3tWoRk
02-02-2009, 20:23
Rinomini il vecchio file, ne scrivi uno con lo stesso nome iniziale saltando l'ultimo carattere o l'ultima linea.
Si ho capito ma devo fare in modo che su un file con un numero SCONOSCIUTO di righe mi cancelli l'ultima... un'alternativa sarebbe trovare il numero delle righe e riscrivere il file saltando l'unica (perchè le righe sono tutte uguali) ma non saprei come fare... comunque grazie x l'aiuto
wizard1993
02-02-2009, 20:27
mai pensato che la stl l'hanno inventata per evitare di scrivere montagne di codice in casi come questi?
guarda la vector
Si ho capito ma devo fare in modo che su un file con un numero SCONOSCIUTO di righe mi cancelli l'ultima... un'alternativa sarebbe trovare il numero delle righe e riscrivere il file saltando l'unica (perchè le righe sono tutte uguali) ma non saprei come fare... comunque grazie x l'aiuto
Ci sono N-mila modi ;)
- puoi leggere e memorizzare tutte le righe in un vector di stirng
- puoi leggere e scrivere due righe alla volta
- puoi leggere la dimensione del file e quindi determinare quando sei all'ultima riga in base a semplici calcoli sulla quantità di dati scritti sul file
- puoi determinare prima il numero di righe
Insomma di modi sono tanti...
vBulletin® v3.6.4, Copyright ©2000-2026, Jelsoft Enterprises Ltd.