C ++从文本文件生成字符串的摘要

时间:2014-01-25 10:52:05

标签: c++

我有一个包含以下字符串的文本文件:

Employee:HoursWorked:PayPerHour:DateWorked
John:5:4:25Jan14
Amy:3:6:25Jan14
Will:4:7:27Jan14
Alan:7:3:25Jan14

我要做的是生成一份日薪报告,如下所示:

Date          Total Salary
25Jan14       59
27Jan14       28

由于我还是C ++的新手,到目前为止我只能生成此输出:

Date: 25Jan14
Total Salary: 20
Date: 25Jan14
Total Salary: 18
Date: 27Jan14
Total Salary: 28
Date: 25Jan14
Total Salary: 21

以下是我的代码:

    string date, fname, fhour, fpay, fdate;
    int ihour, ipay, total, gtotal;
    ifstream file ("salary.txt");


            while (file) 
            {
                    getline(file, fname, ':'); 
                    getline(file, fhour, ':'); 
                    getline(file, fpay, ':');
                    getline(file, fdate);
                    ihour = atoi(fhour.c_str());
                    ipay = atoi(fpay.c_str());



                            cout << "Date: " << fdate << endl;
                            total = ihour * ipay;
                            gtotal += total; //Suppose to store the grand total of a single date
                            cout << "Total Salary: " << total << endl;
  }

如何使输出只显示单个25Jan14日期并加上薪水?我试图谷歌寻求解决方案,但我根本不知道要搜索什么。

请建议,谢谢。

1 个答案:

答案 0 :(得分:0)

您需要存储与其对应的salary相关联的date,然后将所有工资汇总在同一日期。