Die Anzahl der Zeilen je Datensatz ist aber immer gleich? Dann würde ich wahrscheinlich zuerst einmal sehen, dass ich jeden Datensatz in eine Zeile bekomme mit einem definierten Trennzeichen, um einen Überblick zu bekommen. Anschließend könnte man das so entstandene
CSV gut aufdröseln, IIRC hat alzaimar dazu mal eine entsprechende Funktion gepostet.