It's hard to say without knowing precisely what the problem is, but I suspect the problem is the file encoding or perhaps there is a byte order mark (BOM) at the beginning indicating that it is unicode. Your library wouldn't be able to parse it and that would explain your null values. Resaving it probably removes the BOM or saves it under another character encoding.
Open the file with a hex editor and check byte by byte what the file contains before and after the save. If you don't see the same values, then that is your reason.
In that case, the solution would be to pass the proper input stream such as a FileReader to the library with the proper character encoding. I'm not too familiar with SAS but an alternative might be to change the encoding directly of the file being exported to something more reasonable. See here for details.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…