What file type is the .dat file? Is it a comma-separated values (CSV) text file? A tab-separated values (TSV) text file? Is there any data with carriage returns in the field? In your import script step, are you specifying a file type? What other applications do you have running at the time of import?
Since this "has been working flawlessly for a year", do you recall if anything changed in your system a "few weeks ago"?
If you revert to a older backup of the file, does the problem still occur?
Anything else you can provide may be helpful.