|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Messaggi: n/a
|
Gestione di un file .txt con un programma in C
Buongiorno.
Come posso gestire un file .txt attraverso un programma in C? Mi spiego meglio, vorrei un programma che eseguisse queste operazioni in modo ciclico... -Chiedere l'inserimento di un testo... -Cancellare il testo contenuto in un file .txt... -Salvare quel testo nel file .txt... -Chiedere l'inserimento di un testo... -Cancellare il testo contenuto in un file .txt... -Salvare quel testo nel file .txt... -... -...... Come si potrebbe fare? Quali sono le funzioni che devo utilizzare e quali librerie mi servono? |
|
|
#2 |
|
Senior Member
Iscritto dal: Aug 2006
Messaggi: 1262
|
aprire un file:
FILE*file; char leggi[50]; file=fopen("file.txt", "r") -> r: leggi, a: scrivi, w: cancelli il contenuto e scrivi. fgets(leggi, sizeof(leggi), file); prendi una stringa dal file fprintf(file, "%s", leggi); scrivere nel file fclose(file); chiudere il file |
|
|
|
|
#3 |
|
Messaggi: n/a
|
grazie.
Le librerie? |
|
|
#4 |
|
Messaggi: n/a
|
Non è che riuscite a crearmi un mini-programmino funzionante?
Deve solo chiedere di inserire un testo e salvarlo in un file .txt, successivamente cancellare il file e scrivere il testo sul file per tornare a chiedere il testo e per poi riscriverlo e così all'infinito... Ultima modifica di Madchemist : 23-02-2008 alle 12:15. |
|
|
#5 |
|
Member
Iscritto dal: Oct 2006
Messaggi: 36
|
mmm non e' che non si potrebbe richiedere la soluzione intesa come programma finale?
cmq ti do due funzioni che possono servirti void scrivi_file (char* dove, char* cosa, char* modo) { FILE* f = fopen(dove, modo); if (!f) f = fopen (dove, "w"); fprintf(f, "%s\n", cosa); fflush(f); fclose(f); } in dove ci va il percorso del file (compreso il nome del file di testo), in cosa la stringa che vuoi scrivere (magari puoi usare sprintf per creartela sprintf(stringa_finale, "%s qualche altra stringa %s o un numero %d, stringa1, stringa2, intero); ) e modo lo usi o come "w" o append "a" che accoda al file quello che metti in 'cosa'. e void leggi_file (char* dove) { FILE* f = fopen(dove, "r"); if (!f) { f = fopen (dove, "w"); fflush(f); fclose(f); return; } char stringa[256]; while (fgets(stringa, 256, f)) printf("%s", stringa); //modifica questa per avere la stringa letta in altro modo fflush(f); fclose(f); } che lo usi per leggere |
|
|
|
|
#6 |
|
Messaggi: n/a
|
Tutt'ok, grazie!
|
|
|
#7 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Thread chiuso
| V |
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 06:28.


















