我很想从那里经验丰富的c ++程序员那里得知是否有一种方法可以在具有不同格式的文件中读取函数。例如,一个文件的模板是房屋编号,然后是街道名称,另一个文件是相反的,房屋名称然后是街道编号。再次,只是好奇是否可以将一些简洁的代码添加到我的知识和工具箱中,而不用编写两个不同的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的read in函数呢?我不介意为每种文件格式编写另一个函数,但我只是好奇是否有人可以将一些好的技巧添加到工具箱中。再次感谢您的宝贵时间。
答案 0 :(得分:0)
您可以使用getline方法从文本中读取每一行并将其存储在变量中