codice:
ifstream file2 ("estrazioni.txt", ios::in|ios::binary|ios::ate);
if (file2.is_open())
{
size = file2.tellg();
memblock2 = new char [size];
file2.seekg (0, ios::beg);
file2.read (memblock2, size);
file2.close();
for (int i=0; i<size;i++) {
//cout << memblock[i];
valorestringa = intToString(memblock2[i]);
stringaestrazione += valorestringa;
}
testo=stringaestrazione;
continua = true;
inizio = -1; /*1*/
while(continua){
fine = testo.find(',',inizio+1); /*2*/
// ultima parola
if(fine==-1){ /*3*/
continua = false;
fine = testo.length(); /*4*/
}
// Estrazione parola
lparola = (fine-inizio)-1; /*5*/
estratta = testo.substr(inizio+1,lparola); /*6*/
token1.push_back(estratta); /*7*/
inizio = fine; /*8*/
}
Il file estrazionei.txt contiene righe del tipo:
1,2,3,4,5,
10,11,12,13,14,
ecc...
Il caricamento in memblock2 è fulmineo ma perdo in qualità di prestazioni (velocità) durante il caricamento in token1...
E' possibile ovviare in qualche modo a questa perdita di velocità nonostante i dati caricati in memblock2 siamo molti?
Grazie!