data reader from a file