direct reading with std::stream bypasses state checking
As noticed by @Mattijs with reading ensight files, the direct use of stdStream() for raw reading of strings means that failures are not properly noticed, since the IFstream wrapper state is not changed.
Needs visible syncState()
method that can be called to ensure that the internal std::stream state and the OpenFOAM stream state match.
For ensight reading, this could be protected, but there are other locations using stdStream() that will need this too.