2 Werte pro Zeile aus einer dat datei auslesen



  • Hallo ich habe ein kleiner oder besser gesagt großes problem.
    Ich soll aus einer dat datei mehrere Zahlen auslesen die ich dann auch weiterverarbeiten soll.

    Die dat datei ist folgendermaßen aufgebaut : ^
    1111 1111
    2222 2222
    3333 3333

    usw

    Bisher habe ich das mit dem code probiert ich bekomme die Zahlen aber auch nicht als Zahlen zum weiterrechnen abgespeichert.

    char zahl1[10], zahl2[10];
    
    FILE *datei = fopen("test.txt", "r");
    
    fscanf(datei, "%s %s", zahl1, zahl2);
    

    Hat jemand eine idee wie ich die einzelnen werte in eine variablen schreiben kann?

    Danke für eure Hilfe



  • du kannst mit fscanf() die zahlen auch als int's einlesen:

    int zahl1[10], zahl2[10];
    
    FILE *datei = fopen("test.txt", "r");
    
    for(int i=0; i<10; i++) // 10 aufeinanderfolgende zeilen einlesen
      fscanf(datei,"%d %d",&zahl1[i],&zahl2[i]);
    


  • Hallo,
    In C++: (Ungetestet)

    #include <iostream>
    #include <fstream>
    #include <vector>
    using namespace std;
    
    int main(int argc, char* argv[])
    {
          if(argc != 2)
          {
                cout << "\n Usage: program.exe infile\n";
                return -1;
          }
          ifstream in(argv[1]);
          if(in.is_open())
          {
                 vector<int> v; int tmp;
                 while(in >> tmp)
                       v.push_back(tmp);
    
                 // Werte aus Datei stehen jetzt in v.
          }
          return 0;
    }
    

    Caipi



  • besten dank genau so was hab ich gesucht Konfusius .

    Tausend dank


Anmelden zum Antworten