| | |
c++ File I/O Help
Please support our C++ advertiser: Programming Forums - DaniWeb Sister Site
![]() |
Hi,
I am in need of some help with a small portion of my program.
I have an input file as follows:
I need a function to open the file, read in each line and separate the three integers in the front of the line to separate int variables. I then need to separate the rest of the line into a single string variable. I have not done toom much with file IO in c++ and I am not sure how I can complete this. Here is what I have tried. Thank you for your help in advance. Here is a sample program of what I am talking about.
Output:
The above program works until the third one which has a string with a space in it does not work properly. Does anyonw know how I can change this? Thanks for any and all help!
Nick
I am in need of some help with a small portion of my program.
I have an input file as follows:
C++ Syntax (Toggle Plain Text)
10 9 15 program1 11 1 30 important 12 11 10 junk program 14 15 5 other program 17 6 20 another program
I need a function to open the file, read in each line and separate the three integers in the front of the line to separate int variables. I then need to separate the rest of the line into a single string variable. I have not done toom much with file IO in c++ and I am not sure how I can complete this. Here is what I have tried. Thank you for your help in advance. Here is a sample program of what I am talking about.
C++ Syntax (Toggle Plain Text)
#include <fstream> #include <iostream> #include <string> using namespace std; int main(void) { int a,b,c; string name; ifstream infile; infile.open("file.data", ios::in); infile >> a >> b >> c >> name; cout << a << ' ' << b << ' ' << c << ' ' << name << endl; infile >> a >> b >> c >> name; cout << a << ' ' << b << ' ' << c << ' ' << name << endl; infile >> a >> b >> c >> name; cout << a << ' ' << b << ' ' << c << ' ' << name << endl; infile.close(); return 0; }
Output:
C++ Syntax (Toggle Plain Text)
[nnisi@vulcan heap]$ ./a.out 10 9 15 program1 11 1 30 important 12 11 10 junk
The above program works until the third one which has a string with a space in it does not work properly. Does anyonw know how I can change this? Thanks for any and all help!
Nick
•
•
•
•
If you havesomeIstream >> someStringit will read up to the first whitespace. Trygetline(infile, name)after you get the 3 integers. (I haven't used C++ for a while, so I might be remembering getline wrong; if someone can confirm that I'd appreciate it.)
Nick
![]() |
Similar Threads
- connect to text file database (Visual Basic 4 / 5 / 6)
- Importing SQL Script File - Urgent !! (Database Design)
- Syntax for deleting specified file ( in C++) (C++)
- enabling file sharing (Windows NT / 2000 / XP)
- data file help (C)
- 81TB File Server (Networking Hardware Configuration)
Other Threads in the C++ Forum
- Previous Thread: Need help writing a switch program for class
- Next Thread: Help with the execution of this program
Views: 1555 | Replies: 2
| Thread Tools | Search this Thread |
Tag cloud for C++
6 add api array arrays beginner binary bitmap c++ c/c++ calculator char class classes code compile compiler console conversion convert count data delete desktop directshow dll encryption error file forms fstream function functions game getline givemetehcodez google graph homeworkhelper iamthwee ifstream input int integer java lazy lib linkedlist linux loop looping loops map math matrix memory microsoft newbie news node number output parameter pointer problem program programming project proxy python random read recursion recursive reference return sort string strings struct studio system template templates test text tree unix url variable vector video visual visualstudio win32 windows winsock word wordfrequency wxwidgets






