fstream::close:
Calls the close member function for the associated filebuf object. This function, in turn, flushes any waiting output, closes the file, and disconnects the file from the filebuf object. The filebuf object is not destroyed.
ios::clear
void clear( int nState = 0 );
Parameter
nState
If 0, all error bits are cleared; otherwise bits are set according to the following masks (ios enumerators) that can be combined using the bitwise OR ( | ) operator. The nState parameter must have one of the following values:
- ios::goodbit No error condition (no bits set).
- ios::eofbit End of file reached.
- ios::failbit A possibly recoverable formatting or conversion error.
- ios::badbit A severe I/O error.
Remarks
Sets or clears the error-state flags. The rdstate function can be used to read the current error state.
==========================================
在对文件流操作时,如果要对同一个流对象应用,一般是先close,后clear。
具体例子 refer to: http://topic.csdn.net/u/20080828/14/9dad65a7-bcf2-42e0-83fb-1820f03c8bed.html
//c++ primer P253
本文详细介绍了C++中文件流操作的两个关键方法:fstream::close用于关闭文件并断开与文件流对象的连接;ios::clear用于清除错误状态标志。文章指出,在对同一文件流对象进行再次操作前,通常会先调用close方法关闭文件,再调用clear方法清除错误状态。

1万+

被折叠的 条评论
为什么被折叠?



