Originariamente inviato da andry80
Salve a tutti!!
Ho un problema con un file file.txt che viene letto da un algortitmo c++ che prende i valori e li passa ad una variabile float.
Il file è fatto in questo modo
32.45
24.5
34.2
...
il problema è che posso avere degli spazi vuoti tra le righe, quindi nel momento in cui eseguo la funzione getline:
ifstream in ("file.txt")
string STRINGA;
getline(in, STRINGA,'\n');
devo dire al programma che se STRINGA è vuota è necessario saltare e andare avanti col getline, cosa che riuscirei a fare se solo capissi come verificare che STRINGA è vuota.
Ho provato con :
if(STRINGA == NULL).... //COSì non funziona
if(STRINGA == " ").... //COSì non funziona
if(STRINGA == "\n").... //COSì non funziona
Come posso fare???
Grazie
Ma quando confronti due stringhe non puoi usare == perchè non è come se confrontassi un carattere.
Devi usare
codice:
if(!strcmp(STRINGA," ")) ...
comunque in C:
codice:
while(!feof(file)) //finchè non è alla fine del file
{
fgets(stringa,255,file);
printf("%s",stringa);
}