I think the “right” way would be to write a small package for each file format, to handle reading and offer suitable options. Of course if some formats are related (e.g. different LabView output formats) they could be handled by the same package.
To go one step further you could then register the packages with FileIO.