从文本文件中读取特定列

时间:2014-12-20 18:38:01

标签: c++

我正在与其他人的代码合作,并且没有很多c ++经验。我需要编辑代码以在2,3,4列而不是1或5中读取,或者将其更改为读取CSV文件而不是txt文件。这是当前读入的代码:

fin.getline(temp,200);

cout << temp << end1;

sscanf(temp, "%f %f %f %*f\n",&temp1,&temp2,&temp3);

此代码适用于读取较旧的txt文件,因为它们没有我试图排除的第一列。 它是否像添加另一个%*一样简单?

由于

1 个答案:

答案 0 :(得分:0)

最简单且最合理的方法是将您的行更改为:

sscanf(temp, "%f %f %f %f %*f\n",&unused, &temp1,&temp2,&temp3);

第一个col值转为“未使用”&#39;并且在第4次之后被跳过。

此外,您可能需要增加尺寸od&#39; temp&#39;。

添加%* f,在开始时也应该完成这项工作,但我已经有一段时间没有使用它了,现在没有办法检查,但两种解决方案看起来都没问题。