Dateibereiche einlesen



  • Hallo,
    also ich hab eine Date mit z.B. folgendem Aufbau:
    2,6,0xF;4,8,0x1;

    Jetzt möchte ich die dick gedruckten Werte alle in einer eigenen Variable abgespeichert werden (ohne , oder ; ). Nur komm ich nicht ganz dahinter wie ich es machen soll ... Hat wer ein Beispiel oder eine Anregung?`

    LG


  • Mod

    Wie möchtest du sie speichern? Eine Datenstruktur mit drei Variablen die jeweils drei durch Kommas getrennte Werte in der Datei aufnehmen kann?



  • Rewr schrieb:

    Hat wer ein Beispiel oder eine Anregung?`LG

    Ja, such mal nach
    werner salomon csv



  • Rewr schrieb:

    also ich hab eine Date mit z.B. folgendem Aufbau:
    2,6,0xF;4,8,0x1;

    Jetzt möchte ich die dick gedruckten Werte alle in einer eigenen Variable abgespeichert werden (ohne , oder ; ).

    Geht so oder ähnlich:

    #include <iostream>
    #include <fstream>
    #include <string>
    #include <vector>
    
    std::istream& komma( std::istream& in )
    {
        char c;
        if( in >> c && c != ',' )
            in.setstate( std::ios_base::failbit );
        return in;
    }
    
    struct Egal
    {
        int i1, i2;
        std::string s3;
    };
    
    std::istream& operator>>(std::istream& in, Egal& e)
    {   // hier findet das eigentliche Einlesen aus der Datei statt
        return getline( in >> e.i1 >> komma >> e.i2 >> komma, e.s3, ';' );
    }
    
    int main()
    {
        using namespace std;
        vector< Egal > eigeneVariable;
        ifstream datei("input.txt");
        if( !datei.is_open() )
        {
            cerr << "Fehler beim Oeffnen der Datei" << endl;
            return -2;
        }
        for( Egal e; datei >> e; )
            eigeneVariable.push_back( e );
        if( datei.eof() )
            cout << "Datei bis zum Ende gelesen" << endl;
    
        cout << eigeneVariable.size() << " Eintraege gelesen" << endl;
        // die Daten liegen jetzt in 'eigeneVariable'
    
        return 0;
    }
    

    volkard schrieb:

    Rewr schrieb:

    Hat wer ein Beispiel oder eine Anregung?`LG

    Ja, such mal nach
    werner salomon csv

    Besser Google benutzen mit "site:c-plusplus.net werner salomon csv" - der erste Treffer ist auch gleich hilfreich 🙂


Anmelden zum Antworten