Newsgroup: it.comp.lang.c
Titolo: I FILES... come si usano?

Scusa la banalità della domanda, ma il manuale che ho tratta male
quest'argomento e non ho molto tempo.
Mi serve utilizzare un file di scrittura c:\traccia.txt da usare all'interno
di un programma per fare dei test.
Come si fa questo in C?
Come si apre un file, come si chiude e si scrive al suo interno il contenuto
di una variabile dichiarata come :
char *stringa;
così che una volta terminato il programma apro il file e leggo i contenuti
delle varie variabili del tipo suddetto che mi interessano?
Grazie mille
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 
per lavorare con i file devi includere l'header <stdio.h>
per aprire un file usi: fopen()
per scrivere una stringa di testo nel file: fputs()
per chiudere il file quando hai finito di scrivere: fclose()
e' tutto
Cercati la documentazione sul web di come usare quelle funzioni
e che parametri usi.. oppure fai uno sforzo, prova a fare
l'esercizio, e se hai difficolta', allora posta il codice
scritto e domanda cosa sbagli.
Ciao.
-- 
                Roberto Nunnari -software engineer-
                     mailto:
ro...@nunnisoft.ch
 
http://www.nunnisoft.ch
   Residenza Boschetto 12           tel/fax: 
+41-91-6046511
   6935 Bosco Luganese        """    mobile: 
+41-76-3208561
   Switzerland               (o o)
========================oOO==(_)==OOo========================

 Grazie mille
Poi ci mettiamo d'accordo sul prezzo...
#include <stdio.h>
#include <stdlib.h>
#define SIZE 100
int main()
  {
    char *string;
    FILE *f;
    string = malloc (SIZE);
    printf("\n Inserire stringa: ");
    gets(string);
    if (f = fopen("testo.txt","wb"))
      {
        printf("\n Scrittura nel file di: '%s'\n", string);
        fputs(string, f);
        fclose (f);
      }
    else
        printf("\n Il file non puo'essere scritto.");
    if (f = fopen("testo.txt","rb"))
      {
        printf("\n Lettura da file: ");
        while (!feof(f))
            puts(fgets(string, SIZE, f));
        fclose (f);
      }
    else
        printf("\n Il file non puo'essere letto.");
    return 0;
  }
Marcello

 per chiudere il file quando hai finito di scrivere: fclose()
Scusami.
Ho visto che avevi gia' risposto solo quando avevo gia' inviato il post.
Marcello

 Ho visto che avevi gia' risposto solo quando avevo gia' inviato il post.
No problem.. solo che non bisognerebbe dare subito la pappa pronta..
bisogna farli provare prima, altrimenti non impareranno mai.



Grazie per la gentilezza, ma il nostro non è un rapporto tra nonno e
nipote... ho chiesto un aiuto e ringrazio chi me l'ha dato :)


 bisogna farli provare prima, altrimenti non impareranno mai.
Credo tu abbia ragione.
Marcello


Credo sia un atteggiamento presuntuoso... lo dico garbatamente, siete stati
entrambi gentili ad aiutarmi.
Ma io, per quanto ignorante, sono un professionista che ha chiesto aiuto...
Non sono uno studentello. Chi ritiene di aiutarmi lo fa ed io
ringrazio...per il resto e dunque atteggiamenti paterni ed "illuminanti "
non credo rientrino in questo contesto.
Comunque la polemica è fatta giusto per esporre il mio punto di
vista...ribadisco i miei ringraziamenti.


Non sono uno studentello. 
Non  pensarlo! :) Secondo me fa tutto parte di un atteggiamento
fraterno tipico di internet... e' un modo di vedere le cose non da
"professionista" o da "studente", ma piu' che altro da "niubbo" e da
"esperto"... per questo in generale un professionista che sul c e' un
niubbo, puo' capitare che sia trattato "dall'alto in basso" (notare
tutti le virgolette, plz), da uno studentello esperto di c...
(ovviamente senza presunzioni o altro... atteggiamento fraterno,
direi) e' come dire: non importa che ruolo ricopriamo nella vita
reale, quello che importa e' la proiezione delle nostre conoscenze
nell'ambito del c. 
IMHO.
CIao,
Zeppe


Ok... è un punto di vista, per carità.
il mio dire "sono un professionista" non era un modo per vantarmi ma solo
per dire che la mia richiesta era per fini lavorativi...


per dire che la mia richiesta era per fini lavorativi...
l'avevo capito... quello che ho scritto era per motivare una risposta
che effettivamente, se uno e' poco avezzo al mondo dei ng, puo'
sembrare brusca (e, credimi, gente che si offende ne ho visto
tanta...)
Ciao,
Zeppe