zarko
01-06-2009, 17:15
Ciao a tutti,
mi ritrovo davanti a un problema che mi fa sentire un niubbo totale...
Devo fare un programmino che apre un file e lo legge un pezzo per volta, quindi volevo creare una funzione che leggesse dei caratteri ASCII e li memorizza in una variabile, fino a trovare quello specificato, tipo cosi...
#include <fstream>
#include <stdlib.h>
#include <string>
using namespace std;
string header;
void ReadTo(ifstream* fs, char endChar, string* output)
{
bool end = false;
char temp;
for (int i = 0; !end; i++)
{
fs->get(temp);
if (temp == endChar)
end = true;
else
{
//??? output->append(temp);...
}
}
}
int main()
{
ifstream fs("c:\\maya.grgm");
ReadTo(&fs, ';', &header);
fs.close();
cout << header;
system("pause");
}
ma non so come memorizzare il carattere temp nella stringa di output... qualche idea?
Grazie,
Zarko.
mi ritrovo davanti a un problema che mi fa sentire un niubbo totale...
Devo fare un programmino che apre un file e lo legge un pezzo per volta, quindi volevo creare una funzione che leggesse dei caratteri ASCII e li memorizza in una variabile, fino a trovare quello specificato, tipo cosi...
#include <fstream>
#include <stdlib.h>
#include <string>
using namespace std;
string header;
void ReadTo(ifstream* fs, char endChar, string* output)
{
bool end = false;
char temp;
for (int i = 0; !end; i++)
{
fs->get(temp);
if (temp == endChar)
end = true;
else
{
//??? output->append(temp);...
}
}
}
int main()
{
ifstream fs("c:\\maya.grgm");
ReadTo(&fs, ';', &header);
fs.close();
cout << header;
system("pause");
}
ma non so come memorizzare il carattere temp nella stringa di output... qualche idea?
Grazie,
Zarko.