我正在编写一个类似于数据库的程序。它需要一个工作编号、名字、姓氏、工作描述和工作持续时间。
对于描述,我只知道如何从文件中读取单个单词字符串。这是我的代码。
// basic file operations
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
int jobNumber;
string fName;
string lName;
string jobTask;
int jobDuration;
int Rate = 40;
int Price = jobDuration * Rate;
int totalJobs = 0;
ifstream ClientDataBase("example.txt");
while (ClientDataBase >> jobNumber >> fName >> lName >> jobTask >> jobDuration)
{
cout << jobNumber << ' ' << fName << ' ' << lName << ' ' << jobTask << ' ' << jobDuration << "hours" << endl;
totalJobs++;
}
cout << "\nThere are a total of " << totalJobs << " recorded in this database" << endl;
ofstream ClientDatabase("example.txt", ios::app);
cout << "Enter new clients job number, first name, last name, job task, duration of task" << endl;
cout << "press Ctrl+Z to quit\n\n" << endl;
while (cin >> jobNumber >> fName >> lName >> jobTask >> jobDuration)
{
ClientDatabase << jobNumber << ' ' << fName << ' ' << lName << ' ' << jobTask << ' ' << jobDuration << endl;
}
}
使用此布局,我插入数据,关闭文件,重新打开并查看数据已存储,我可以再次添加更多。但jobTask
只能是一个字。无论如何我可以做到,这样描述可以比一个词长,并且仍然能够以自定义格式从文件中读取它?例如jobTask
,可能正在执行“诊断和修复”,但要将其输入到文件中,我实际上只能使用“修复”,但这可能意味着任何事情。