Link to home
Start Free TrialLog in
Avatar of luling1972
luling1972

asked on

C++ Reading a .txt file

In C++, I am attempting to read several fields for a text file into my program. I was told I could use the code below to fetch the c-sting variable housed in the middle of the .txt file. I am having no luck getting the cin.get() to work in the middle of the code.

suggested code:
char name[21];
cin.get( name, 21, '\n' );
====================================
 The code that I am using is my .txt file is name "masterFile".:
masterFile >> ID >> name >>payRate >> dependents >> eType;

A sample of the text file is below:

 5 Christine Kim       30.00 2 1
15 Ray Allrich         10.25 0 0
16 Adrian Bailey      12.50 0 0
17 Juan Gonzales     30.00 1 1
18 Morris Kramer       8.95 0 0
22 Cindy Burke         15.00 1 0
24 Esther Bianco       10.25 0 0
25 Jim Moore           27.50 3 1
32 Paula Cameron       14.50 0 0
36 Melvin Ducan        10.25 0 0
37 Nina Kamran         30.00 1 1
38 Julie Brown         35.00 0 1
40 Imelda Buentello    14.50 0 0
42 J. P. Morgan        12.50 0 0
43 Maria Diaz          15.00 0 0





































Avatar of Jaime Olivares
Jaime Olivares
Flag of Peru image

your main problem is that name has white spaces inside it, so the >> operator won't work correctly.
Fortunately, you data is fixed width, so you can use:

char line[100];

while(!masterFile.getline(buffer, 100).eof())
{

}

then you can extract string portions at specific positions to obtain the fields.

Fixed width data:
 5 Christine Kim       30.00 2 1
15 Ray Allrich         10.25 0 0
16 Adrian Bailey       12.50 0 0
17 Juan Gonzales       30.00 1 1
18 Morris Kramer        8.95 0 0
22 Cindy Burke         15.00 1 0
24 Esther Bianco       10.25 0 0
25 Jim Moore           27.50 3 1

Open in new window

Avatar of luling1972
luling1972

ASKER

Could you please add more code. I am having a hard time understanding you concept.
are you able to show the lines of the file?
I am having trouble extracting the name field in the second field of the file. Could you provide an example?
ASKER CERTIFIED SOLUTION
Avatar of Jaime Olivares
Jaime Olivares
Flag of Peru image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
That looks good!  I have solved my problem. Thanks for you time and patience!
good work. great job!!!