我的档案里什么都没写



我已经为此挣扎了很长一段时间了,它可能是完全愚蠢的(当你看你的代码太长时间的情况下经常是这样^^'),但我不能弄清楚。

我有一堆要写入的文件和下面的代码:

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只包含我用作标题的第一行。应该在for循环中添加的所有内容都没有添加。现在我检查了v的大小,它大于0,并且无论如何cout打印数据很好,因此它确实通过了for循环,只是数据没有添加到文件中。

我很感激你能提供的帮助。

不能刷新、关闭或删除流。因此,不能保证实际的磁盘写入操作已经完成。

相关内容

  • 没有找到相关文章

最新更新