使用fstream从文件中读取多个值?

时间:2013-06-17 16:29:03

标签: c++ stream fstream

我可以使用

从制表符分隔的文本文件中读取多个值
double value1, value2, value3;
ifstream in;
fin.open ("myfile.dat", ifstream::in);
fin >> value1 >> value2 >> value3;

我的所有值都为零。

2 个答案:

答案 0 :(得分:2)

好的,在你的代码中有三个重要的错误:

  • fin未在此范围内声明(您可能需要将第二行的in更改为fin
  • ofstream::in不存在,您可能是fstream::in
  • 您还应确保输入文件存在。这可以使用fin.good()
  • 完成

答案 1 :(得分:1)

这对我有用:

main.cpp中:

#include <fstream>
#include <iostream>
int main() {
  double value1, value2, value3;
  std::ifstream fin;
  fin.open ("myfile.dat", std::ifstream::in);
  if (fin.good()) {
    fin >> value1 >> value2 >> value3;
    printf("%f, %f, %f\n", value1, value2, value3);
  }
}

MYFILE.DAT:

3.4893289   1.328923    3.432901

输出:

3.4893289, 1.328923, 3.432901

我希望这会有所帮助。