So i was trying to make a program to let me read from 2 separate files, one being csv one being .dat and then taking information from both and combining them into an xml outfile. Here is the issue, the first half of my code works fine from what i can see, but the second half where i have to read from a file formatted like this:
Bright, Rich, PC12K2RT, 10/21/2011
and No matter what i change my values to it keeps giving me the same results when the program executes and looks like this in my output:
PC12K2RTUsed Car 02350.00
PC12K2RT
2
Used Car
02350.00
Bright, Rich, PC12K2RT, 10/21/2011
Bright
Bright, Rich, PC12K2RT, 10/21/2011
Bright
Bright, Rich, PC12K2RT, 10/21/2011
Bright
Bright, Rich, PC12K2RT, 10/21/2011
Bright
Bright, Rich, PC12K2RT, 10/21/2011
the indented section of the above input is working correctly. The second part is not chopping out each section
My intentions are to first take everything from the file into a variable, then save everything from Start to the first comma minus the comma to a second variable, and so on so forth till EOF where each string or value between commas is saved as a separate variable. Not looking to have the code just given to me but if you can show an example and explain why you did what you did i would greatly appreciate it. Been trying to mess with this on and off for almost 3 weeks now and figured someones outside opinion could be beneficial:
notes: the way i have it set up currently displays in the output prompt what will be written to the file so i know if its working or not without having to continually open the output file (the xml section is incomplete because i do not need help with that section)
my code:
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <string>
#include <fstream>
using namespace std;
void pause()
{
cout << "\n Press enter to continue..."; char junk;
cin.ignore();
cin.get(junk);
}
int main()
{
ifstream myInfile1;
ifstream myInfile2;
ofstream myOutfile;
string Items, partNumber, partColor, partDescript, price;
string Customer, lastName, firstName, date;
myInfile1.open("c:\\c++\\Items.dat");
getline(myInfile1, Items);
cout << "\n\n" << Items;
partNumber = Items.substr (0,8);
cout << "\n\n" << partNumber;
partColor = Items.substr (5,1);
cout << "\n\n" << partColor;
partDescript = Items.substr (8,14);
cout << "\n\n" << partDescript;
price = Items.substr (23,8);
cout << "\n\n" << price <<endl;
myInfile1.close();
myInfile2.open("c:\\c++\\Customer.csv");
getline(myInfile2, Customer);
cout << "\n\n" << Customer;
int currentcount;
currentcount = Customer.find(",");
lastName = Customer.substr(0,currentcount);
Customer.substr(currentcount,Customer.length()-currentcount+1);
cout << "\n\n" << lastName;
cout << "\n\n" << Customer;
firstName = Customer.substr(0,currentcount);
cout << "\n\n" << firstName;
Customer.substr(currentcount,Customer.length()-currentcount+2);
cout << "\n\n" << Customer;
partNumber = Customer.substr(0,currentcount);
cout << "\n\n" << partNumber;
Customer.substr(currentcount,Customer.length()-currentcount+3);
cout << "\n\n" << Customer;
date = Customer.substr(0,currentcount);
cout << "\n\n" << date;
Customer.substr(currentcount,Customer.length()-currentcount+4);
cout << "\n\n" << Customer;
myInfile2.close();
pause();
return 0;
}
</fstream></string></iomanip></iostream>