Ciao a tutti.
Ho un file di testo.
Composto da un certo numero di righe di lunghezza fissa.
Come posso fare per prendere solo il primo carattere e passare alla riga successiva del file?
Ciao
Ciao a tutti.
Ho un file di testo.
Composto da un certo numero di righe di lunghezza fissa.
Come posso fare per prendere solo il primo carattere e passare alla riga successiva del file?
Ciao
apri il file
poi fai
fin.getline(buffer,1); //con fin si intende un ifstream
e poi per leggere una nuova riga ancora ancora fin.getline .....
su qualsiasi libro ci dovrebbe esesere un esempio del genere
Devo farlo in C.
Non conosco il C++. fin.getline forse è C++?
ha bhe allora cambierà solo l'istruzione getline, nn so quale si usi in c pero'.
in c la funzione è fgets
iquarda qui per il prototipo:
http://www.mkssoftware.com/docs/man3/fgets.3.asp
ciauz
Spiego il problema.
Ho un file di testo fatto più o meno così:
K 2 4
Q 1 6
R 3 9
...
...
ho fatto un ciclo for e con fscanf sono andato a prendere i dati così:
Il problema è che una riga la prende bene e l'altra no e così fino alla fine, cioè legge qualcosa tra una riga e l'altra che nel file non compare.codice:fscanf(fp, "%c %d %d", &p &x, &y);
Ho come l'impressione che fscanf non passi alla riga successiva.
Provo con fgets, ma vorrei capire come mai non va fscanf
Ciao
Prova così :
codice:#include <iostream.h> int main() { char ch; FILE *in = fopen("Sample.txt", "rt" ); do { ch = getc(in); printf("%c\n", ch); while(ch!=10 && ch!=EOF) ch=getc(in); } while(ch!=EOF); fclose(in); return 0; }
01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
All errors are undocumented features waiting to be discovered.