Ragazzi,
ho un problema.
Con la funzione fgets riesco a leggere la prima riga di un file.
Se quel file è formato da tante righe e io ne voglio leggere una in particolare (della quale conosco la posizione) come devo fare (in C)?
Bye![]()
Ragazzi,
ho un problema.
Con la funzione fgets riesco a leggere la prima riga di un file.
Se quel file è formato da tante righe e io ne voglio leggere una in particolare (della quale conosco la posizione) come devo fare (in C)?
Bye![]()
Conquista la folla, e conquisterai la libertà (Proximus - Il gladiatore)
Il riferimento italiano per i Fans di Final Fantasy
Scandalos member of APE
in che senso conosci la posizione ? se conosci l'offset dall'inizio del file basta usare
fseek( SEEK_SET, offset); se l'offset è dall'inizio del file
fseek( SEEK_CUR,offset); se l'offset è dalla posizione corrente
questo muove la posizione del file al punto che ti serve
Intendo:
file.txt
Come faccio a prendere (per esempio) la riga 3 metterla in una variabile?5
blablalbalb
sdmkfspmf
csavdava
Con fgets riesco a mettere la prima riga in una var, ma le altre?
Bye![]()
Conquista la folla, e conquisterai la libertà (Proximus - Il gladiatore)
Il riferimento italiano per i Fans di Final Fantasy
Scandalos member of APE
son cazzi,se nn sai quanto è lunga ogni stringa...devi farti un bel ciclo che scorre il file leggendo i dati in un buffer e verificando quanti ritorni a capo ti trovi sai in che riga ti trovi e se devi tenerla in memoria, o se vuoi fare una cosa + semplice basta che usi fgets n volte
Come faccio a sfruttare fgets più volte se prende sempre la prima linea?Originariamente inviato da Yojimbo
son cazzi,se nn sai quanto è lunga ogni stringa...devi farti un bel ciclo che scorre il file leggendo i dati in un buffer e verificando quanti ritorni a capo ti trovi sai in che riga ti trovi e se devi tenerla in memoria, o se vuoi fare una cosa + semplice basta che usi fgets n volte
Bye![]()
Conquista la folla, e conquisterai la libertà (Proximus - Il gladiatore)
Il riferimento italiano per i Fans di Final Fantasy
Scandalos member of APE
fgets legge fino a quando incontra la prima interruzione di riga, no?
Conquista la folla, e conquisterai la libertà (Proximus - Il gladiatore)
Il riferimento italiano per i Fans di Final Fantasy
Scandalos member of APE
usa fscaf. nel tuo caso verrebbe
codice:/* Nota che i campi della struct sono == a quelli del file */ typedef struct _Info { int n; char primo[90]; char secondo[90]; }Info; /* main */ Info tua_struct; memset(&tua_struct, 0, sizeof(Info)); FILE * f = fopen("es.txt", "r"); fscanf (f, "%d %s %s %s", &tua_struct.n, &tua_struct.primo, &tua_struct.secondo, ); fclose(f);
La stupidità umana e l'universo sono infinite.
Della seconda non sono certo(Einstein)
Gnu/Linux User
Infatti fscanf legge righe e vai sul sicuro.
.:: Zetra.it - Web. ads . multimedia . graphix ::.
Realizzazione siti web - Carte Magic ai prezzi più bassi d'italia
- Comuni e Città