PDA

Visualizza la versione completa : [C/C++] gestione file


Jmdef
28-05-2002, 11:09
Salve a tutti!!!

E' da poco che armeggio con i file esterni (non quelli relativi alle funzioni o gli header...). La mia domanda è questa: come si possono leggere da un file valori di tipo diverso (caratteri, stringhe, numeri...)?

Avevo pensato di porli su righe diverse del file, ma poi mi sono reso conto di non essere capace di leggere, ad esempio:

1^ riga: stringa
2^ riga: intero
3^ riga: carattere

e così ciclicamente per tutti i dati che ho inserito, cioè:

4^ riga: stringa
5^ riga: intero
6^ riga: carattere

Mi domando, esistono degli indicatori di riga per far ciò? Se si, si possono utilizzare sia nella gestione di file ASCII che binari?

Scusate se sono stato prolisso, ma delle volte non mi capisco nemmeno io!!! :rolleyes:

JmDeF

iloiacorb
28-05-2002, 11:44
la funziona int fget(FILE * fp, buffer, dim) dovrebbe ritornare il numero di riga, a questo punto se il numero di riga modulo 3, per l'esempio ke hai fatto trovi se un intero esempio:

1 str
2 int
3 chr
4 str
5 int
6 chr

n=fget(fp,riga,80)
while(n!=0) //o EOF nn mi ricordo bene
{
switch(n%3)
{
case 0: chr
case 1: int
case 2: str
}
n=fget(fp,riga,80)
}

o altrimenti utilizza il do..while forse è + logico comuque ricordati di aprire e poi chiudere il file.

Un altro consiglio e di inserire dei record nel file nn + .txt, ma .dat così leggerai record di 3 elementi, le funzioni da utilizzare sarebbero read e write, prova a vedere sul help e sappiami dire

Loading