我的档案里什么都没写
Nothing written in my file
我已经为此苦苦挣扎了一段时间,它可能完全是愚蠢的(当你查看你的代码太久时通常会出现这种情况 ^^'),但我不能搞清楚。
所以我有一堆要写入的文件和以下代码:
outfileMatrix = new ofstream(path+to_string(trialI)+".csv");
outfileEvents = new ofstream(path+to_string(trialI)+"events.csv");
outfileMeta = new ofstream(path+to_string(trialI)+"meta.csv");
//...
vector<string> v = getTimeHistory();
*outfileEvents << "Subject ID ; " << "TrialIndex ; " << "Timestamp ;" << "Action ID ; " << "Duration ;" << endl ;
for(std::vector<string>::size_type i = 0; i!=v.size(); i++) {
cout << "Coucou" << endl ;
*outfileEvents << subjectID << " ; " << trialInd << " ; " << v.at(i);
cout << subjectID << " ; " << v.at(i) << endl ;
}
//...
vector<string> w = getMatrixHistory();
for(std::vector<string>::size_type i = 0; i!=w.size(); i++) {
*outfileMatrix << subjectID << " ; " << trialInd << " ; " << w.at(i) << endl ;
}
我得到的输出在标准输出上会很好(即 cout 工作得很好)但是我的 outfileEvents
只包含我用作 headers 的第一行。应该在 for 循环中添加的所有内容都没有。现在我检查了 v 的大小,它大于 0,无论如何 cout
打印数据都很好,因此它确实通过了 for
循环,只是没有添加数据在文件中。
如果你能提供帮助,我将不胜感激。
您既没有刷新、关闭也没有删除流。所以不能保证实际写入磁盘已完成。
我已经为此苦苦挣扎了一段时间,它可能完全是愚蠢的(当你查看你的代码太久时通常会出现这种情况 ^^'),但我不能搞清楚。
所以我有一堆要写入的文件和以下代码:
outfileMatrix = new ofstream(path+to_string(trialI)+".csv");
outfileEvents = new ofstream(path+to_string(trialI)+"events.csv");
outfileMeta = new ofstream(path+to_string(trialI)+"meta.csv");
//...
vector<string> v = getTimeHistory();
*outfileEvents << "Subject ID ; " << "TrialIndex ; " << "Timestamp ;" << "Action ID ; " << "Duration ;" << endl ;
for(std::vector<string>::size_type i = 0; i!=v.size(); i++) {
cout << "Coucou" << endl ;
*outfileEvents << subjectID << " ; " << trialInd << " ; " << v.at(i);
cout << subjectID << " ; " << v.at(i) << endl ;
}
//...
vector<string> w = getMatrixHistory();
for(std::vector<string>::size_type i = 0; i!=w.size(); i++) {
*outfileMatrix << subjectID << " ; " << trialInd << " ; " << w.at(i) << endl ;
}
我得到的输出在标准输出上会很好(即 cout 工作得很好)但是我的 outfileEvents
只包含我用作 headers 的第一行。应该在 for 循环中添加的所有内容都没有。现在我检查了 v 的大小,它大于 0,无论如何 cout
打印数据都很好,因此它确实通过了 for
循环,只是没有添加数据在文件中。
如果你能提供帮助,我将不胜感激。
您既没有刷新、关闭也没有删除流。所以不能保证实际写入磁盘已完成。