Quote:
Originariamente inviato da salvodel
Salve a tutti, siccome non ho molta esperienza con il C/C++ stavo cercando di scrivere una funzione che mi legga dei numeri da file. Il file d'origine è in formato .dat o .mat ma se ci fossero problemi potrei convertirlo in txt.
Il punto è che su internet non ho trovato niente che potesse essere simile al mio caso. Infatti essendo poche le mie conoscenze nel momento in cui metto mano a dei programmini simili per adattarlo al mio caso mi si blocca tutto.
Spero ci sia qualcuno che possa darmi una mano. La funzione deve leggere da file dei numeri che potrebbero presentarsi diciamo cosi:
12,5 142,5 46,2 562,65 65,97 ecc(se c'è il punto cambia qualcosa?)
In questo caso ho semplificato il file di partenza ma se fosse possibile sarebbe il massimo poter leggere da file direttamente tutte le informazioni. Infatti il file si presenta come una prima "colonna" contenente il tempo e in quelle successive la storia temporale.
Spero di non aver messo troppa carne al fuoco ma spero ci sia in giro un programmino che faccia questo.
Grazie mille a tutti.
|
In C++ potrebbe essere qualcosa di simile se il file è in formato testo, i valori sono separati dallo spazio e il carattere finale sia il solito "\r\n":
Codice:
string valueSeparator = " ";
ifstream is("nomefile");
if (is.is_open())
{while(!is.eof())
{
vector<string> values;
string line;
getline(is, line);
size_t pos = 0;
while((pos = line.find(valueSeparator)) != string::npos)
{
values.push_back(line.substr(0,pos));
line = line.substr(pos + 1);
}
//Adesso in values hai tutti i valori in formato stringa
}
is.close();
}