<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Text Datei einlesen]]></title><description><![CDATA[<p>Hallo,<br />
eine Frage wieso funktioniert das einlesen nicht?<br />
Bitte um Hilfe.</p>
<p>lg Danke im Voraus</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string&gt;

using namespace std;

int main()
{
    fstream fin( &quot;eingabe.txt&quot; );
    string buffer;
    string tmp_array[90];
    int sudoku[9][9];
    int i=0;
    int z = 0;

    while (fin.good())
    {
        getline(fin,buffer,'\n');
        tmp_array[i]=buffer;
        i++;
    }
    fin.close();

    for(int i  = 0; i &lt; 90; i++)
    {
         sudoku[z][i] = tmp_array[i];

         if(i == 10)
         {
              z++;
         }
    }

    for(int i = 0; i &lt; 90; i++)
    {
        cout&lt;&lt; sudoku[i];
    }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/302018/text-datei-einlesen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 11 Aug 2026 17:17:24 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/302018.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 09 Apr 2012 15:13:51 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Text Datei einlesen on Mon, 09 Apr 2012 15:15:36 GMT]]></title><description><![CDATA[<p>Hallo,<br />
eine Frage wieso funktioniert das einlesen nicht?<br />
Bitte um Hilfe.</p>
<p>lg Danke im Voraus</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string&gt;

using namespace std;

int main()
{
    fstream fin( &quot;eingabe.txt&quot; );
    string buffer;
    string tmp_array[90];
    int sudoku[9][9];
    int i=0;
    int z = 0;

    while (fin.good())
    {
        getline(fin,buffer,'\n');
        tmp_array[i]=buffer;
        i++;
    }
    fin.close();

    for(int i  = 0; i &lt; 90; i++)
    {
         sudoku[z][i] = tmp_array[i];

         if(i == 10)
         {
              z++;
         }
    }

    for(int i = 0; i &lt; 90; i++)
    {
        cout&lt;&lt; sudoku[i];
    }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2200194</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200194</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 09 Apr 2012 15:15:36 GMT</pubDate></item><item><title><![CDATA[Reply to Text Datei einlesen on Mon, 09 Apr 2012 15:21:37 GMT]]></title><description><![CDATA[<p>Meist kommt dann die Frage:<br />
Compiler Fehlermeldung oder Warnung?<br />
Linker Fehlermeldung oder Warnung?<br />
Wenn Programm erstellt wurde, was läuft anders als erwartet?</p>
<p>funktioniert nicht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2200199</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200199</guid><dc:creator><![CDATA[f.-th.]]></dc:creator><pubDate>Mon, 09 Apr 2012 15:21:37 GMT</pubDate></item><item><title><![CDATA[Reply to Text Datei einlesen on Mon, 09 Apr 2012 15:32:47 GMT]]></title><description><![CDATA[<p>Hey,</p>
<p>mich würde es wundern, wenn das Programm überhaupt kompilierbar ist... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Denn du übergibst einem Integer ein String Objekt, soweit ich weiß,<br />
funktioniert das nicht einfach so, ohne weiteres Zutun.</p>
<p>Schau dir mal sstream für die Konventierung eines String Objektes zu einem Integer an -&gt; <a href="http://www.cplusplus.com/reference/iostream/stringstream/stringstream/" rel="nofollow">Referenz</a> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2200205</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200205</guid><dc:creator><![CDATA[Usama]]></dc:creator><pubDate>Mon, 09 Apr 2012 15:32:47 GMT</pubDate></item><item><title><![CDATA[Reply to Text Datei einlesen on Mon, 09 Apr 2012 15:36:29 GMT]]></title><description><![CDATA[<p>Denn du übergibst einem Integer ein String Objekt, soweit ich weiß,<br />
funktioniert das nicht einfach so, ohne weiteres Zutun.</p>
<p>ja genau das ist mein Fehler wie kann ich ihn beheben ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2200207</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200207</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 09 Apr 2012 15:36:29 GMT</pubDate></item><item><title><![CDATA[Reply to Text Datei einlesen on Mon, 09 Apr 2012 15:39:07 GMT]]></title><description><![CDATA[<p>Schau dir doch die Referenz an in meinem Beitrag davor... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2200208</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200208</guid><dc:creator><![CDATA[Usama]]></dc:creator><pubDate>Mon, 09 Apr 2012 15:39:07 GMT</pubDate></item><item><title><![CDATA[Reply to Text Datei einlesen on Mon, 09 Apr 2012 15:47:30 GMT]]></title><description><![CDATA[<p>Ich glaube, wenn man jetzt noch Stringstreams reinbringt, dann ähnelt das Programm immer mehr einer Rube-Goldberg-Maschine.</p>
<p>@Threadersteller: Bitte lies dir mal den ersten Link in meiner Signatur durch und überleg, ob deine Frage für jemanden, der dein Problem nicht kennt, verständlich ist. Und dann frag bitte danach, was du erreichen möchtest, nicht danach, wie du denkst, was eine passende Lösung wäre. Wie sieht das Format der Datei aus, deren Daten du in das Feld schreiben möchtest? Käme es in Frage das Programm gleich objektorientiert aufzuziehen? Dein Programm sieht so aus, als könntest du dir dadurch später viel Arbeit sparen und rohe Arrays sind sowieso immer Mist und sollten immer gekapselt werden. Selbst ein Verlegenheitswrapper wie std::array wirkt wahre Wunder.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2200212</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200212</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Mon, 09 Apr 2012 15:47:30 GMT</pubDate></item><item><title><![CDATA[Reply to Text Datei einlesen on Tue, 10 Apr 2012 09:50:44 GMT]]></title><description><![CDATA[<p>Ok ich formuliere meine Frage neu <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Ich habe einen Sudoku Löser und möchte das Sudoku aus einer Textdatei eilnsen (eingabe.txt).</p>
<p>in der Textdatei befindet sich ein ungelöstes Sudoku, dass so aussieht:<br />
300240060<br />
040000000<br />
189635400<br />
000080200<br />
007496801<br />
893150640<br />
001920500<br />
203300740<br />
960500303</p>
<p>Das Progamm soll dann die Zahlen einlesen und in ein 2 Dimensionales Array einlesen, dass für den Sudokulöser benötigt wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2200428</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200428</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 10 Apr 2012 09:50:44 GMT</pubDate></item><item><title><![CDATA[Reply to Text Datei einlesen on Tue, 10 Apr 2012 10:12:48 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;fstream&gt;
#include &lt;iostream&gt;
#include &lt;cctype&gt; // isdigit

int main()
{
    using namespace std;
    int sudoku[9][9];
    {
        ifstream fin(&quot;input.txt&quot;);
        for( int idx = 0; idx &lt; 81; ++idx )
        {
            char c;
            if( !(fin &gt;&gt; c) || !isdigit(c) )
            {
                cerr &lt;&lt; &quot;Feher beim Lesen&quot; &lt;&lt; endl;
                break;
            }
            sudoku[idx/9][idx%9] = c - '0';
        }
    }
    cout &lt;&lt; &quot;fertig&quot; &lt;&lt; endl;
    cin.get();
    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2200436</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200436</guid><dc:creator><![CDATA[Werner_logoff]]></dc:creator><pubDate>Tue, 10 Apr 2012 10:12:48 GMT</pubDate></item><item><title><![CDATA[Reply to Text Datei einlesen on Tue, 10 Apr 2012 10:29:55 GMT]]></title><description><![CDATA[<p>Hier ein brauchbares Grundgerüst:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

using namespace std;

class SudokuFeld
{
  char feld[9][9];  // Typischer Anfängerfehler: Auch wenn Sudokus wie Zahlen aussehen,
                    // so sind es doch keine arithmetischen Werte, mit denen man rechnet.
                    // int ist daher kein angemessener Datentyp für die Felder.
                    // Gleicher Fehler kommt auch oft bei Postleitzahlen, Telefon- und Kontonummern
  // (char ist zwar auch ein arithmetischer Typ und ganz korrekt wäre ein eigener Datentyp
  // aber das ist mir im Moment zu viel Arbeit)

  friend istream&amp; operator&gt;&gt;(istream&amp; in, SudokuFeld &amp;feld)
  {
    for (int i = 0; i &lt; 9; ++i)
      {
        for (int j = 0; j &lt; 9; ++j)
          {
            char wert;
            in &gt;&gt; wert;
            if (wert &lt; '0' or wert &gt; '9')
              in.setstate(ios::failbit);
            feld.feld[i][j] = wert - '0';
          }
        // Man könnte hier noch prüfen, ob an dieser Stelle tatsächlich ein Zeilenumbruch 
        // in der Datei steht.
      }
    return in;
  }
  friend ostream&amp; operator&lt;&lt;(ostream &amp;out, const SudokuFeld &amp;feld)
  {
    for (int i = 0; i &lt; 9; ++i)
      {
        for (int j = 0; j &lt; 9; ++j)
          {
            if (feld.feld[i][j])
              out &lt;&lt; static_cast&lt;char&gt;(feld.feld[i][j] + '0');
            // Cast ist nötig, weil das Ergebnis der Addition ein int ist
            else
              out &lt;&lt; ' ';
          }
        out &lt;&lt; '\n';
      }
    return out;    
  }
};

int main()
{
  SudokuFeld feld;
  cin &gt;&gt; feld;
  cout &lt;&lt; &quot;Gelesen:\n&quot; &lt;&lt; feld &lt;&lt; '\n';
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2200439</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200439</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Tue, 10 Apr 2012 10:29:55 GMT</pubDate></item><item><title><![CDATA[Reply to Text Datei einlesen on Tue, 10 Apr 2012 10:48:28 GMT]]></title><description><![CDATA[<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2200450</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2200450</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 10 Apr 2012 10:48:28 GMT</pubDate></item><item><title><![CDATA[Reply to Text Datei einlesen on Thu, 12 Apr 2012 14:21:48 GMT]]></title><description><![CDATA[<p>@Werner_logoff kannst du mir deinen Quellcode kurz erklären ?</p>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2201211</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2201211</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 12 Apr 2012 14:21:48 GMT</pubDate></item><item><title><![CDATA[Reply to Text Datei einlesen on Thu, 12 Apr 2012 19:22:34 GMT]]></title><description><![CDATA[<p>christianklemm schrieb:</p>
<blockquote>
<p>kannst du mir deinen Quellcode kurz erklären ?</p>
</blockquote>
<p>.. konkrete Fragen wären mir lieber.<br />
Aber ich versuche es mal mit der Zeile 14</p>
<pre><code class="language-cpp">if( !(fin &gt;&gt; c) || !isdigit(c) )
</code></pre>
<p>das ' <code>fin &gt;&gt; c</code> ' liest das nächste druckbare(!) Zeichen aus der Datei. D.h. alle <a href="http://de.wikipedia.org/wiki/Leerraum" rel="nofollow">White Space</a> Character, die vor dem druckbaren Zeichen stehen, werden überlesen. Das gilt auch für den Zeilenumbruch. Daher braucht man sich um die Anordnung der Zeilen nicht kümmern.<br />
Geht das Einlesen gut, d.h. ' <code>c</code> ' enthält jetzt das gelesene Zeichen so liefert <code>!(fin &gt;&gt; c)</code> den Wert <code>false</code> , weil hier das Fehlerflag des Streams zurück gegeben wird.<br />
Damit wird von dem Oder-Statement ' <code>||</code> ' der nächste Ausdruck abgearbeitet. Hier wird geprüft, ob ' <code>c</code> ' eine Ziffer ist. Falls das erfüllt wird (Ok-Fall) so liefert <code>!is_digit(c)</code> wegen des vorgestellten ' <code>!</code> ' ebenso <code>false</code> . Der if-Block wird daher übersprungen und in Zeile 19 wird aus der Ziffer der passende int berechnet.</p>
<p>Hast Du in Zeile 19 den linke Teil am '=' verstanden? Falls nein, so frag' noch mal nach.</p>
<p>Gruß<br />
Werner</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2201296</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2201296</guid><dc:creator><![CDATA[Werner Salomon]]></dc:creator><pubDate>Thu, 12 Apr 2012 19:22:34 GMT</pubDate></item></channel></rss>