How much work is it reasonable for an object constructor to do? Should it simply initialize fields and not actually perform any operations on data, or is it okay to have it
The constructor should create a valid object. If in your case that requires reading and parsing information, than so be it.
If the object can be used for other purposes without parsing the information first, than consider making two constructors, or a separate method.