探讨:StreamWriter的Close()方法可否代替Flush()和Dispose()?
一般我们使用StreamWriter类时,先调用Flush()将数据写入文件,再调用Dispose()销毁流对象。StreamWriter还提供了Close()方法,MSDN中说“Close 的此实现调用传递 true 值的 Dispose 方法。必须调用 Close 以确保所有数据正确写出到基础流中。调用 Close 后,在 StreamWriter 上进行的任何操作都可能引发异常。如果磁盘上没有足够的空间,则调用 Close 将引发异常。除非显式地调用 Flush 或 Close,否则,刷新流不会刷新其基础编码器。”,而Dispose(bool disposing)方法中,disposing“为 true 则释放托管资源和非托管资源;为 false 则仅释放非托管资源。”,“当 disposing 参数为 true 时,此方法释放该 StreamWriter 引用的、由任何托管对象持有的全部资源。此方法调用每个引用对象的 Dispose 方法”,这样是不是可以使用Close()方法代替调用Flush()和Dispose()两个方法?