inFile - чтение разных файлов - PullRequest
0 голосов
/ 03 октября 2018

Мне любопытно узнать от более опытных программистов на С ++, есть ли способ прочитать функцию в файлах, имеющих разные форматы.Например, в одном файле есть шаблон дома #, затем название улицы, а другой файл - наоборот, имя дома, затем улица #.Опять же, просто любопытно, если бы был какой-то элегантный код, который я мог бы добавить к своим знаниям и инструментарию вместо того, чтобы писать две разные функции inFile.

Спасибо всем за потраченное время.

РЕДАКТИРОВАТЬ

Вот часть кода:

#include <iostream>
#include <fstream>
#include <string>




using namespace std;

struct WH
{
    int inum;
    string iname;
    string warname;
    int quant;
    float whole;
    float markup;
    float retail;
};


void readinprime(WH);



ifstream inFile;
ofstream outFile;

int main()
{
    WH ware[100];




    //inFile.open("WLL1.txt", ios::in);
    //inFile.open("WLL2.txt", ios::in);
    //inFile.open("WLL3.txt", ios::in);
    //inFile.open("WLL4.txt", ios::in);


    return 0;
}
void readinprime(WH ware[])
{
    int c;
    for(c = 0; c < 100; c++)
    {
        inFile << ware.inum[c] << ware.iname[c];
    }
}

Итак, по сути, первый файл (WLL1.txt) имеет формат integer-> string , а затем следующий файл (WLL2.txt) будет иметь формат string-> integer .У меня вопрос, есть ли другой способ написать функцию чтения в, где он может читать в int, затем string & string, затем int, не записывая другую функцию?Я не против написать другую функцию для каждого формата файла, но мне было просто любопытно, есть ли у кого-нибудь хорошие приемы, которые я мог бы добавить в свой ящик для инструментов.Еще раз спасибо за ваше время.

1 Ответ

0 голосов
/ 04 октября 2018

вы можете использовать метод getline, чтобы прочитать каждую строку из текста и сохранить ее в переменной

...