1. Чтение данных из текстового файла в С++
1. Чтение данных из текстового файла в С++
Задача. Прочитать данные из текстового файла. При вводе данных в конце каждой строчки нажималась клавиша Ввод. Примерное содержимое файла text.txt (имя - занимает 10 позиций и зарплата - 4 позиции):
Ivanov I 1234
Sidorov S 0980
Petrov P 2000
#include <iostream.h> #include <fstream.h> #include <iomanip.h> #include <stdio.h> #include <conio.h> #include <stdlib.h> void main(){ filebuf file; char *name=" "; char salary[4]="0000"; int n = 0; clrscr(); cout << "Name | Salary" << endl; cout << "---------------------" << endl; if(file.open("text.txt", ios::in) == 0) {cerr << "Error" << endl; } else { istream outFile(&file); while(outFile.read(name,10)) //чтение имени из файла { outFile.read(salary,4); //чтение зарплаты из файла outFile.ignore(); //пропуск символа ввода cout << setw(10) << setiosflags(ios::left)<< name << "| " << setw(10) << atoi(salary) << endl; n+=atof(salary); //atof - преобразование символов в float } cout<< endl <<" Total: "<< n << endl; } getchar(); } //Результат работы программы: Name | Salary --------------------- Ivanov I | 1234 Sidorov S | 980 Petrov P | 2000 Total: 4214 |