使用循环从包含多行的文本文件中读入数据

Using a loop to read in data from a text file with multiple lines

本文关键字:文本 文件 读入数据 循环 包含多      更新时间:2023-10-16

我是C++语言的新手,并且一直在做关于如何让我的程序正常运行的圈子。我绝不期望任何人为我做这件事,但希望有人帮助解决这个问题。

我得到了这个数据集:

AGUA CANYON 8900 2.4 3.1 2.7 1.9 1.5 0.9 1.9 2.7 2.3 2.1 2.2 2.4
BEAVER DAMS 8000 2.9 2.8 3.4 3.4 2.2 0.9 1.1 1.7 1.9 2.4 2.7 2.7
BEAVER DIVIDE   8280 3.3 3.1 3.3 3.3 2.6 1.5 1.4 1.8 1.8 2.2 2.9 3.3

以及其他 75 条信息。 到目前为止,我的代码是:

#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(void)
{
ifstream inFile;
ofstream outputFile;
string Station;
int Elevation;
double Precipitation;
int count = 0;
inFile.open("monthlyPrecipitation.txt");
outputFile.open("AnnualPrecipitaion.txt");
outputFile << "Annual Preciptitaion Report" << endl << endl;
outputFile << "Weather StationttElevationtPrecipitation" << endl;

    inFile >> Station;
    for (string Station; getline(inFile, Station);)
    {
        outputFile << Station << endl;
    }

return 0;

}

我无法让程序看起来像这样

Annual Precipitation Report
Weather Station       Elevation  Precipitatio
AGUA CANYON             8900        26.1
BEAVER DAMS             8000        28.1
BEAVER DIVIDE            8280        30.5

尝试使用 class std::stringstream

您可以按照此答案了解更多详情。

前任:

    std::istringstream iss(line);
    iss >> var1 >> var2 >> var3;