Welcome

首页 / 软件开发 / C++ / C++中如何同步读写文本

C++中如何同步读写文本2014-11-16写程序: 每个2秒写入文本一个数字;

读程序: 每个5秒读入文本最后一个数字;

写程序代码:

#include <iostream>#include <fstream>#include <windows.h>using namespace std;int main (void) {ofstream ofs("D:/w.txt");int num = 0;while (1) {ofs << ++num << std::endl;std::cout<< num << std::endl;Sleep(2000);}ofs.close();return 0;}
输出:

读程序代码:

/** main.cpp**Created on: 2014.06.08*Author: Spike*//*vs 2012*/#include <windows.h>#include <fstream>#include <iostream>#include <string>#include <vector>using namespace std;int main(){vector<string> tmp_files;while (1) {Sleep(5000);ifstream infile( "D:/w.txt" );if (!infile) {cout << "fail!" << endl;return 0;}string lineContent;while ( getline( infile, lineContent, "
" ) ){tmp_files.push_back(lineContent);}infile.close();std::cout << *(tmp_files.end()-1) << std::endl;}/*ofstream outfile( "w2.txt",ios::out ); vector<string>::iterator siter = tmp_files.begin();copy( tmp_files.begin(), tmp_files.end()-1, ostream_iterator<string>(outfile) ); cout << "ok!" << endl; outfile.close();*/return 0;}
输出:

作者:csdn博客 Spike_King