sehr wichtig quellcode gesucht komm neme weiter



  • also ich hab ne frage ich hab ne csv in dr ich in jeder zeile 3 werte hab die mit strichpunkt getrennt sind wie kann ich jetzt die werte dieser csv in eine struktur speichern so das ich siein meinem programm für mathematische operationen verwenden kann könntet ihr mir bitte den quellcode für c++ verraten danke ist sehr wichtig



  • ich glaub du hast alle deine strichpunkte und sonstige Satzzeichen in der csv-datei gelassen.
    Hast du denn schon einen anfang? geht zB mit boost::tokenizer, oder mit std::string::substr+find etc. Dir einen fertigen Quelcode geben wird wohl keiner machen.



  • Struktur für jedes Wertepaar und dann operator<< überladen. (Darin einfach per std::getline(file, dest, "Strichpunkt") nutzen)



  • Natürlich gibt ihm einer den fertigen Code, wenn er entsprechend zahlt.



  • (D)Evil schrieb:

    Struktur für jedes Wertepaar und dann operator<< überladen. (Darin einfach per std::getline(file, dest, "Strichpunkt") nutzen)

    bitte ohne getline - aber ansonsten genau so.

    #include <fstream>
    #include <iterator>   // istream_iterator<>
    #include <iostream>
    #include <vector>
    
    template< char D >
    std::istream& trenner( std::istream& in )
    {
        char t;
        if( in >> t && t != D )
            in.setstate( std::ios_base::failbit );
        return in;
    }
    
    struct YourStruct
    {
        double m_x, m_y, m_z;
    };
    std::istream& operator>>( std::istream& in, YourStruct& s )
    {
        // Format:  <x>; <y>; <z>
        return in >> s.m_x >> trenner<';'> >> s.m_y >> trenner<';'> >> s.m_z;
    }
    
    int main()
    {
        using namespace std;
        ifstream datei("Mappe1.csv");
        vector< YourStruct > alles( (istream_iterator< YourStruct >( datei )), istream_iterator< YourStruct >() );
        // mit 'alles' weiterarbeiten
    
        return 0;
    }
    

    Zum 'trenner' schau Dir mal diesen Thread an.
    .. und falls meine Glaskugel recht hat, handelt es sich bei den drei Werten um Koordinaten oder Positionen, dann ist dieser Thread über einen Vektor und dieser Thread über das Einlesen und Verarbeiten von Koordinaten sicher hilfreich.

    Ist der Dezimaltrenner bei den Zahlen ein Punkt oder ein Komma?

    Gruß
    Werner



  • "Strichpunkt" ist ein anderes Work für Semikolon.



  • kannst du mir einen vernünftigen Grund sagen, warum du ihm jetzt den fertigen source gegeben hast?! Diese Faulheit und Dreistheit auch noch zu unterstützen finde ich schon ziemlich hart!



  • Danke also i hab des jetzt hinkriegt.
    aber ich hätte da noch ne frage wennich ein feld deklarien
    will muss ich ja konstante werte eingeben
    also zum beispiel:

    char xy[5][10]

    wenn ich jetzt aber statt der 5 einen wert haben will den ich im programm vorher ermittelt hab geht des irgendwie?

    also so solls eigentlich sein:

    char xy[a][10]

    ich habs probiert aber i komm net drauf wie des funktionieren könnte!
    könnt ihr mir bitte helfen?
    danke!



  • Entweder std::vector oder new und delete[] .

    greetz, Swordfish


Anmelden zum Antworten