Calling Close/Dispose on XlsxReader does not close the stream supplied in the constructor. The same goes for XlsReader.
Both XlsReader and XlsxReader use up the stream in the constructors and do not save a reference to the streams beyond the constructor's scope, so it would be safe to close the stream after calling the constructor.
Bruce Dunwiddie