| 发表于:2007-07-05 21:03:28 楼主 |
#include <iostream> #include <fstream> #include <string> using namespace std; int main() { struct buffer { char time[10]; char name[10]; }; buffer buffer[3]; memset( buffer, 0, sizeof(buffer) ); strcpy( buffer[0].time, "20070628 " ); strcpy( buffer[0].name, "flow1 " ); strcpy( buffer[1].time, "20070629 " ); strcpy( buffer[1].name, "flow2 " ); strcpy( buffer[2].time, "20070629 " ); strcpy( buffer[2].name, "flow3 " ); ofstream out; out.open( "data ", ios::binary ); if ( !out ) { cout < < "failed to open file " < < endl; return -1; } out.write( ( char * )buffer, sizeof(buffer) ); out.close(); return 0; } 使用下列语句读数据时最后会读到一个空记录,不知道为什么,请高手指教 while ( ! in.eof() ) { memset( &buffer, 0, sizeof(buffer) ); in.read ( (char *)&buffer, sizeof( buffer ) ); ..... } |
|
|
|
|