I am creating a zoo record, I have a csv file containing the following points: animal_name,hair,feathers,eggs,milk,airborne,aquatic,predator,toothed,backbone,breathes,venomous,fins,legs,tail,domestic,catsize,class_type aardvark,1,0,0,1,0,0,1,1,1,1,0,0,4,0,0,1,1 antelope,1,0,0,1,0,0,0,1,1,1,0,0,4,1,0,1,1
I would only like to read the animal_name, predator and domestic value for all animals listed in the csv file. I have the following code:
#include "ZooRecord.hpp"
template <class T>
ZooRecord<T>::ZooRecord(std::string input_name_file)
{
    //Declare variables
    std::string name, none, predator, domestic;
    std::fstream in_file;
    //Open file
    in_file.open(input_name_file);
    if(in_file.fail())
    {
        std::cout << "Could not open file" << std::end;
    }
    else
    {
        while(in_file.good())
        {
            std::getline(in_file, name, ',');
            std::cout << name << " ";
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
            std::getline(in_file, predator, ',');
            std::cout << predator << " ";
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
            std::getline(in_file, domestic, ',');
            std::cout << domestic << " ";
            std::getline(in_file, none, ',');
            std::getline(in_file, none, ',');
        }
    }
}
Expected output: name predator domestic
 
    