|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Nov 2007
Messaggi: 96
|
[c] stampare su file un ciclo di stringhe
ennesimo thread di richiesta di aiuto per il mio gestionale.
riassumo brevemente. il mio è un gestionale in cui è possibile aggiungere, modificare, visualizzare, eliminare articoli. gli articoli vengono salvati in articolo[i].etc ad ogni ciclo. ho una funzione che visualizza gli articoli inseriti. vorrei che questi articoli presenti nel mio archivio venissero stampati su un file di testo, a fondo di questa lista articoli ho messo un opzione "stampa articoli su file", vorrei che clickandoci mi salvasse questo file di testo. ho letto la guida c di html.it ma c'ho capito poco. potreste dirmi i comandi necessari per la stampa su file e dove dovrei posizionarli di preciso??? *EDIT* risolto, potete chiudere Ultima modifica di fenix576 : 20-07-2010 alle 12:47. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Mar 2009
Messaggi: 753
|
Per far ciò che chiedi è sufficiente utilizzare una serie di funzioni che si trovano nella libreria "stdio.h".
Prima cosa che devi fare è creare il file. Per far questo è sufficiente che tu la apra e, trattandosi sempre di un novo file, la modalità di apertura sarà "w". -> http://linux.die.net/man/3/fopen Sei ora in possesso del file descriptor, con questo puoi scrivere sul disco, quindi nel tuo file. Qui puoi usare più funzioni, ad esempio puts() ->http://linux.die.net/man/3/puts Questa stamperà ciò che gli passi sul tuo file, dovrai realizzare un costrutto adatto che ti stampi i tuoi articoli, quindi chiamare più volte puts(). Direi una volta per ogni articolo. Devi calcolarti anche i vari segni di spaziatura e formattazione del tuo file, ma sempre puts() puoi usare. Quando la lista di articoli giunge alla fine utilizzerai fclose() sul tuo file descriptor. Puoi anche pensare ( e te lo consiglio) di produrre un file formattato in modo da essere importabile in Excel. Come un file .csv |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 13:55.



















