witam
mam za zadanie wczytanie i obrobienie bardzo duzych plików txt/csv w formacie jak ponizej
s|godzina|i|i|i|i|i
B;1828;257924;191825;47;16;2;
B;1828;257924;191825;31;16;3;
B;1828;257924;191825;36;17;3;
L;1828;257924;191825;33;16;4;
B;1828;257933;191825;32;15;1;
Jaka metoda wczytania danych będzie najlepszą i najszybszą formą obrabiania takich duzych danych?
Czy mógłby ktoś pomóc stworzyć kod wczytujący dane z pliku z zapisaniem do formatu umożliwiającego późniejszą obrobkę!?
(1.zamienić literę "B" na liczbę, 2.usunąć wszystkie wiersze z literą "L;" na poczatku linii. 3.utworzyć swoje zmienne typu wartosc z drugiej linii minus wartosc z pierwszej linii itp.)
Z góry dziękuję za odpowiedzi.
poniżej próbka zle działającego kodu, na razie udało mi się odczytac dane jednak nie wiem jak je podzielić na różne zmienne wg separatora ";",
#include "stdafx.h"
#include <istream>
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <string>
#include <sstream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
ifstream data("abs.txt");
string line;
while (getline(data, line))
{
int cell_1;
int cell_2;
int cell_3;
getline(data, cell_1, ';');
getline(data, cell_2, ';');
getline(data, cell_3, '\n');
cout << "\n" << cell_1 << cell_2 << cell_3 << endl;
}
system("pause");
return 0;
}