Mam kilka plików po kilka gigabajtów (~5GB per plik) . Każdy zawiera rekordy o N polach (N jest znane, ale zmienne per plik wejściowy).
- Wartości pól otoczone są
"
. - Pola odseparowane są
;
- Po rekordzie występuje znak
\n
.
W wartości pola mogą wystąpić znaki \n
, "
, ;
. Znaki "
występujące w wartościach pól są escapowane ""
. \n
i ;
nie są escapowane.
Doraźnie pliki wejściowe poprawiam przed dalszym przetwarzaniem:
-
"
pojawiające się w wartości pola, zastąpić przez:###QUOT###
-
\n
nie będące separatorem rekordów , zastąpić przez :###BREAK###
Docelowo ziomek, który produkuje pliki będzie musiał poprawić format.
Przykład poglądowy:
Wejście:
Dla N=4
"val11";"";"val13
a
b"";""
c
";"foo
"
"val21";"";"val22";"val23"
Wyjście:
"val11";"";"val13###BREAK###a###BREAK##b###QUOT###;###QUOT#####BREAK###c###BREAK###";"foo###BREAK###"
"val21";"";"val23";"val24"
W moim przypadku wybór padł na Perla.
Ciekaw jestem jak byście podeszli do tematu, gdyby przyszło je faktycznie poprawiać. Jaki byłby Wasz wybór (technologia, biblioteka)?