텍스트 파일에서 읽고 텍스트 파일에 쓰는 프로그램을 C++로 작성하려고합니다. 읽은 텍스트 파일은 첫 번째 줄에 일 수 (int)를 가지며, 세 번째 영업 사원이 다른 줄에있는 성과 이름을 갖습니다. 나는이 부분을 가지고C++ 이중 텍스트 파일에서 읽기
2 // number of days, could change
sales person1 //first sales person's first and last name
sales person2
sales person3
11.45 30.23 34.56 37.84 45.96 //first day of sales for sales person1
20.45 33.0 22 11 26.87 90 //first day of sales for sales person2
33.57 40 20.87 23.9 45.8 //first day of sales for sales person3
56.6 75.8 39.0 23.3 10 //second day of sales for sales person1
40.34 54.2 12.4 43.5 23
23 45.6 75.34 27.45
세를 읽는 : 샘플 텍스트 파일은 아래와 같습니다 : 그런 다음 주에 주어진 번호에 대한 각 판매 사람을 위해 매일 판매를 제공하기 위해 데이터 (복식)의 충분한 라인이있을 것이다 영업 사원의 이름. 하지만 나는 각 라인의 다른 판매원과 일치하기 때문에 각 라인의 더블을 읽는 법을 모른다. 그래도 각 줄마다 합계가 필요합니다. 어떻게해야합니까? 다음 코드는 내가 지금까지 가지고있는 것이다. 누군가 제발 도와주세요!
#include<iostream>
#include<fstream>
#include<cstdlib>
#include<string>
#include<cctype>
using namespace std;
void get_input(char input_file[]);
void get_output(char output_file[]);
void readFile(char name[]);
string getName(ifstream &in);
void writeFile(char output[]);
int main()
{
ifstream in;
char input_file[30];
char output_file[30];
get_input(input_file);
get_output(output_file);
//int total = readFile(input_file);
writeFile(output_file);
}
void get_input(char input_file[])
{
cout << "Enter name of the input file: ";
cin >> input_file;
}
void get_output(char output_file[])
{
cout << "Enter name of the output file: ";
cin >> output_file;
}
void readFile(char fileName[])
{
int weeks;
double total1 =0, sales1, total2 = 0, sales2, total3 = 0, sales3;
ifstream in;
in.open(fileName);
if(in.fail())
{
cout << " failed to open the input file" << endl;
exit(-1);
}
in >> weeks;
cout << "Total weeks processed: " << weeks << endl;
string name1 = getName(in);
cout << name1 << endl;
string name2 = getName(in);
cout << name2 << endl;
string name3 = getName(in);
cout << name3 << endl;
int i = 1;
/*do // this is where i want to process the sales and get the total
{
in >> sales1;
total1 = total1 + sales1;
in >> sales2;
total2 = total2 + sales2;
in >> sales3;
total3 = total3 +sales3;
} while(i <= 3);*/
in.close();
}
string getName(ifstream &in)
{
string first, last;
in >> first >> last;
return first + " " + last;
}
void writeFile(char output[])
{
ofstream out;
out.open(output);
out.close();
}
당신은 증가하지 않는'i' : 당신은 주까지 각 사람의 총 분할을 원하는 경우에 당신은 조금 다른 뭔가를해야 할 것이다. – 0x499602D2