I need to read information from a text file into a struct array. Im writing a program to make a list of favorites that the user will input. When they close the program, the array will write to a file. The next time the program is ran, i need to read in the file and continue the array where i left off. I need to read in 3 parts to the struct. Here is what i have so far, with some play code that i was trying.
// assumptions: 100 favoriates at most
#include <string>
#include <iostream>
#include <fstream>
using namespace std;
// data structure
struct favorite
{
int id;
string url;
string annotation;
// to deal with file operations, better use
// char url[100];
//then you need to use strcmp, strcpy functions etc.
};
const int MAX=100;
struct favorite fs[MAX];
void writearecord(struct favorite af, int index)
{
fs[index].id=af.id;
fs[index].annotation=af.annotation;
fs[index].url=af.url;
}
void dptable(int upplimit)
{
for(int i=0; i<upplimit; i++)
{
ifstream("favlist.txt");
cout<<fs[i].id<<" "<<fs[i].url<<" "<<fs[i].annotation<<endl;
}
}
int main()
{
struct favorite onefavorite;
//onefavorite.id=1;
//onefavorite.url="www.google.com";
//onefavorite.annotation="search engine";
//writearecord(onefavorite, 0);
dptable(3);
ofstream outf("favlist.txt", ios::app);
for (int i=0; i<3; i++)
{
onefavorite.id =i;
cout << "Please enter URL: " ;
cin >> onefavorite.url;
cout << "Enter annotation: " ;
cin >> onefavorite.annotation ;
outf << onefavorite.id<<" " << onefavorite.url<<" " << onefavorite.annotation << endl;
writearecord(onefavorite, i);
}
dptable(3);
return 0;
}
and my text file
0 www.aol.com Mail
1 www.cnet.com Tech
2 www.yaoo.com SE
i need to read the "0" into .id, the www.aol.com into the .url, and "mail" into .annotation then read in the next line of data.
I just am just starting to get into programming so any help would be greatly appreciated.