从文件中获取输入,并在C++每行放置一个值

Taking input from a file and putting one value per line C++

本文关键字:一个 获取 文件 输入 C++ 并在      更新时间:2023-10-16

好的,所以在C++中,我正在尝试开发一个可以从这样的文件中获取输入的程序:

1.3 2.4 3.8 4.0 5
6.79 7 8 9 10
23 45 5.6 2.45 2.3

并让它每行输出一个值,如下所示:

1.3
2.4
3.8
4.0
5
6.79
7
8
9
10
23
45
5.6
2.45
2.3

我的程序已经可以打开读取和关闭文件,所以这不是问题。

使用

>> 流运算符读取值时,默认情况下使用空格分隔符。 因此,您的换行符和空格将自动被吃掉。 您需要做的就是逐个读取值,直到没有剩余值。

因为您希望以相同的格式输出值,并且它们看起来是doublefloat类型,所以您实际上应该读入std::string。 否则,翻译问题和舍入错误可能会蔓延。

std::ifstream infile( "values.txt" );
std::string val;
while( infile >> val ) cout << val << std::endl;