ood*_*123 0 c++ io vector getline
我正在编写一个程序来逐行读取文本文件,将行值存储在向量中,进行一些处理然后写回新的文本文件.这是文本文件通常的样子:
如您所见,有两列:一列用于帧号,另一列用于时间.我想要的只是第二列(又名时间).文本文件中可能有数百行,如果不是数千行.以前我一直在手动删除我不想做的帧编号列.所以我的问题是:是否有一种简单的方法来编辑我当前的代码,这样当我用getline()它读取文件时会跳过第一个单词而只获得第二个单词?这是我用来读取文本文件的代码.谢谢
ifstream sysfile(sys_time_dir);
//Store lines in a vector
vector<string> sys_times;
string textline;
while (getline(sysfile, textline))
{
sys_times.push_back(textline);
}
Run Code Online (Sandbox Code Playgroud)
由于每行中有两个数字,因此您可以读取两个数字并忽略第一个数字.
vector<double> sys_times;
int first;
double second;
while ( sysfile >> first >> second )
{
sys_times.push_back(second);
}
Run Code Online (Sandbox Code Playgroud)