我无法弄清楚如何做到这一点:
我必须从包含一行名称的.txt文件中读取,然后在下一行包含价格,并继续大约10次。 (即文本文件说:
John Doe
234.0
Jane Doe
465.0
我必须在名字前打印出“姓名”,在号码前打印“工资:”。我该怎么做?我甚至不知道从哪里开始!
编辑:到目前为止我所拥有的:
#include<iostream>
#include<iomanip>
#include<fstream>
#include<string>
using namespace std;
int main()
{
ifstream infile("wage.txt");
ofstream outfile("wage.txt");
string line;
if(infile.is_open){
while(!infile){
getline(infile,line);
if (isdigit(line)){
cout<<"$"<<line<<endl;
}
}
}
return 0;
}
答案 0 :(得分:0)
我大约90%确定你必须阅读整个文本文件,然后完全覆盖它。
文本文件本质上是一系列字符,我不相信它们支持实际插入。
您可以采用多种方法,我可能会将文件加载到包含名称和数量的某个结构中,然后使用正确的格式重新生成文件。
另一种方法是创建一个新文件,并根据旧文件构建它,除了格式正确,然后删除旧文件并重命名新文件以具有正确的名称。