试了几种方法的不够简洁
有没有会写的 分享一下思路 谢谢啦
就用输入输出函数
#include <iostream>
#include <stdlib.h>
#include <unistd.h>
#include <fstream>
#include <time.h>
#include <string>
#include <string.h>
using namespace std;
int main() {
cout << "input: exit to quit this process" << endl;
time_t t;
time(&t);
struct tm st;
localtime_r(&t, &st);
char cdate[12];
strftime(cdate, sizeof(cdate), "%Y-%m-%d ", &st);
fstream fs;
const char *fname = "testiostream.txt";
fs.open(fname, ios::app);
while (true) {
string line;
getline(cin, line);
if (line == "exit") {
break;
}
time(&t);
localtime_r(&t, &st);
char ctime[10] = {0};
strftime(ctime, sizeof(ctime), "%H:%M:%S ", &st);
fs << cdate << ctime << line << '\n';
}
fs.close();
cout << "file closed ..." << endl;
cout << endl;
ifstream of(fname, ios::out);
char cline[1024];
while (!of.eof()) {
memset(cline, 0, 1024);
of.getline(cline, 1024);
cout << cline << endl;
}
of.close();
cout << "output file content end ..." << endl;
return 0;
}
排序的问题你自己搞吧。。