Connecting Tech Pros Worldwide Help | Site Map

reading file into string array

novacreatura@gmail.com
Guest
 
Posts: n/a
#1: Mar 6 '06
Hi,

I have a project that's supposed to create a program for a "Dating
Service". The first part of the program is to read a textfile of
profiles which include names, age, etc...into a string array, and be
able to add,edit,remove to the textfile of profiles during runtime.
What would be the most efficient way to do this to make it easiest as
possible to make changes to the textfile during time and access
elements of the array?

john

mlimber
Guest
 
Posts: n/a
#2: Mar 6 '06

re: reading file into string array


novacreatura@gmail.com wrote:[color=blue]
> Hi,
>
> I have a project that's supposed to create a program for a "Dating
> Service". The first part of the program is to read a textfile of
> profiles which include names, age, etc...into a string array, and be
> able to add,edit,remove to the textfile of profiles during runtime.
> What would be the most efficient way to do this to make it easiest as
> possible to make changes to the textfile during time and access
> elements of the array?
>
> john[/color]

First, don't use an array or a raw buffer; use a std::vector of
std::strings (see
http://www.parashift.com/c++-faq-lit...html#faq-34.1). If you
do this, use the getline function, something like this:

ifstream file( "dating.txt" );
vector<string> v;
string line;
while( getline( file, line ) )
{
v.push_back( line );
}
// Now process the vector of strings

Alternately, you might consider implementing an extraction operator for
your data structure. Something like:

struct Person
{
string first, last;
unsigned int age;
// ...
};

istream& operator>>( istream& is, Person& p )
{
is >> p.first >> p.last >> p.age;
return is;
}

Then you could use it like this:

vector<Person> v;
Person p;
while( file >> p )
{
v.push_back( p );
}
// Now process the vector of People

Note that you can't generally modify data in the middle of a file (e.g.
by seeking to a certain point and trying to overwrite the data), so you
may need to write the entire data file each time.

Cheers! --M

john isaac
Guest
 
Posts: n/a
#3: Mar 6 '06

re: reading file into string array


thanks!!!

Closed Thread