since you specify the position of all your fields in your data, Oracle expects to find each line with the format :

PRIME_ID A_SEQ_NO STARTDATE ENDDATE DAY_START DAY_END

the fact that you have a NULL default value does not change anything to that, Oracle tries to insert your data, and expects a date in the 3rd and 4th fields, which is not the case ...

you have heterogeneous data, and what I would do would be to separate data in 2 files, create 2 temporary tables, one with PRIME_ID, A_SEQ_NO, STARTDATE, ENDDATE, and the other with the days instead of the dates, then you insert data in these 2 tables, and do an INSERT ... SELECT using NVLs to insert all your data in TIMES ...