Spory plik tekstowy i tablica

0

Mam mały problem z odczytem pliku w którym znajduje się 3147264 znaków, które wprowadzam do tablicy.
Samo wprowadzenie jest dość szybkie. Problem pojawia się kiedy chcę połączyć po 4 znaki w jednego stringa i wprowadzić je do wektora. Zanim wykona się ta pętla mija ok 20 minut co jest strasznie uciążliwe.
Jest na to jakiś szybszy sposób?

1

Zanim będziemy mogli cokolwiek powiedzieć i doradzić pokaż w jaki sposób to robisz.

1

Tablica "tab" jest wypełniona i zawiera 3147264 elementy.

stringstream a,b,c,d;
string temp;
for(int i=0; i<rozmiar; i+=4)
{
	a<<int(tab[i]);
	b<<int(tab[i+1]);
	c<<int(tab[i+2]);
	d<<int(tab[i+3]);
	temp=a.str()+b.str()+c.str()+d.str();
	a.str(""); b.str(""); c.str(""); d.str(""); 
	wektor.push_back(temp);
}
1
for(int i=0; i<rozmiar; i+=4)
        wektor.push_back(string(tab+i, 4));
1
for(int i=0;i<rozmiar;i+=4)
  {
   stringstream s;
   for(int k=0;k<4;++k) s<<(int)tab[i++];
   wektor.push_back(s.str());
  }

tylko że skoro mówisz że to są takie rozmiary to znaczy że prawdopodobnie coś jest nie tak. Więc lepiej podaj więcej szczegółów - po kiego ci tak wielkie tablice na których robisz identyczne operacje?

1 użytkowników online, w tym zalogowanych: 0, gości: 1