Ehm, forse mi ero espressa male... scusatemi tutti per l'incomprensione (sono una deficiente)...ma tu avevi detto che quel numero rappresentava il numero totale di el, cioè la somma di tutte le 3 categorie. Se invece rappresenta il numero di el per categoria, basta che usi un contatore e quando questo raggiunge la soglia lo azzeri passi ad un nuovo array e ricominci
Ricomincio: chiamo d'ora in poi count=52790(o qualsiasi altro numero diverso da file a file) che è il numero di elementi di ogni categoria, quindi count x3=numero elementi totali dalla terza riga in poi.
Ma non è meglio azzerare il contatore di volta in volta? Così evito di trovarmi nella spiacevole condizione in cui, se per caso count è perfettamente divisibile per 6 e per 4, di avere l'ultima riga di ogni categoria piena. Inoltre non è detto che il primo numero di ogni elemento sia maggiore del precendente, questa cosa l'avevo già scartata a priori guardando attenatamente il file (cmq anche io avevo avuto il tuo stesso pensiero). Come dicevo nel precedente mio post, pensavo che non si potesse fare una operazione simile perchè avevo capito che ogni volta che viene letta una riga vengono contati i token solo di quella riga e non di tutto il file. Se così non fosse si può passare all'altro array se count=n° token_per_categoria, o sbaglio? Ma che costrutto conviene usare in questo caso? Avevo letto dell'esistenza di arraylist, può giovarmi?dato che nell'ultima riga di ogni categoria ci possono essere meno di 4 o 6 elementi, secondo me la via migliore è dire finche ogni il primo numero di ogni elemento è maggiore del precendente copio nello stesso array, quando ne trovo uno minore passo ad un array nuovo.