coljam 0 Newbie Poster

I have a CSV file with a bunch of columns, but I only need the information for the 11th column. How do I read through each line and skip to the 11th column and then store those values in a vector? I'm struggling to find clear information on how to read files in c++. This is what I have so far:

#include<iostream>
#include<fstream>
#include<vector>
#include <sstream>
#include <string>

std::string readStock(std::string fileName){
   std::vector<std::string> ticker; //create vector
   std::ifstream f(fileName, std::ios::in|std::ios:: binary|std::ios::ate);
   std::string finalString = "";
   if(f.is_open()){
     std::string str;
     std::getline(f,str); //skip the first row
     while(std::getline(f,str)){ //read each line
       std::istringstream s(str);  //stringstream to parse csv
       std::string val;  //string to hold value
       for(int i=1;i<=10;++i){ //skips everything until we get to the
column that we want
         while(std::getline(s,val, ',')){
         }
       std::getline(s,val,',');
       ticker.push_back(val);
     }
     f.close();

     finalString = ticker.front();
   }
}
   else{
     finalString="Could not open the file properly.";
   }
   return finalString;
}
int main(){
   std::string st;
   st=readStock("pr.csv");
   std::cout<<st<<std::endl;
   return 0;
}
Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.