Probleme beim einlesen von Daten



  • Hallo,

    ich möchte ein txt file, das aus zwei spalten mit zahlen besteht einlesen.

    Ich habe folgendes probiert:

    #include <iostream>
    #include <fstream>
    using namespace std;
    
    // number of entries in the file
    const Int_t nmeas=200.;
    
    // declare data arrays to keep the data
    Double_t obstime[nmeas];
    Double_t x[nmeas];
    
    void freqEx2(){
    
    ifstream in;
    in.open("data.txt");
    
    for(Int_t imeas=0;imeas<nmeas;imeas++){
              in >> obstime[imeas] >>  x[imeas];
                        }
        cout << x[imeas] << " " << obstime[imeas] << endl;
         }
    

    Jetzt gibt er mir aber nur nullen aus. Was mache ich falsch?
    (die data data.txt existiert und ist im gleichen ordner wie das programm)

    vielen Dank für eure Hilfe, Tim



  • #include <iostream>
    #include <fstream>
    using namespace std;
    
    // number of entries in the file
    const Int_t nmeas=200.;
    
    // declare data arrays to keep the data
    Double_t obstime[nmeas];
    Double_t x[nmeas];
    
    void freqEx2(){
    
        ifstream in;
        in.open("data.txt");
    
        for(Int_t imeas=0;imeas<nmeas;imeas++){
              in >> obstime[imeas] >>  x[imeas];
        }
        cout << x[imeas] << " " << obstime[imeas] << endl;
    }
    

    Habe es mal formatiert.



  • #include <iostream>
    #include <fstream>
    using namespace std;
    
    // number of entries in the file
    const Int_t nmeas=200.;
    
    // declare data arrays to keep the data
    Double_t obstime[nmeas];
    Double_t x[nmeas];
    
    void freqEx2()
    {
    
    ifstream in;
    in.open("data.txt");
    
    for(Int_t imeas=0;imeas<nmeas;imeas++)
    {
      in >> obstime[imeas] >>  x[imeas];
      cout << x[imeas] << " " << obstime[imeas] << endl;
    }
    }
    


  • ifstream in;
        in.open("data.txt");
    

    AAAAHRRRRRRGGGGG!!!! SeppJ, was passiert da nochmal?

    Edit: Und sind hier Globale Variablen wirklich nötig?



  • danke,

    cout << x[imeas] << " " << obstime[imeas] << endl;
    

    gehört natürlich in die Schleife. Aber daran liegts leider nicht
    Ausgabe sieht ungefähr so aus:

    0 0
    0 0
    0 0



  • Ich glaube, es liegt an deiner Datei. Bei mir funktioniert es.


Anmelden zum Antworten