PDA

View Full Version : [c] stampare su file un ciclo di stringhe


fenix576
20-07-2010, 12:00
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

Teo@Unix
20-07-2010, 12:55
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