<?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[Von Textdatei in zweidimensionales Array schreiben]]></title><description><![CDATA[<p>Hi Leute!</p>
<p>Ich hab folgenden Code geschrieben. Der funktioniert auch soweit. Ich möchte aber nun, dass ich innerhalb der while-Schleife nicht einfach auf die Konsole ausgebe, sondern, in ein zweidimensionales Array schreibe.</p>
<pre><code>#include &lt;iostream&gt;                    
#include &lt;string&gt;
#include &lt;fstream&gt;
using namespace std;

int main()                             
{   
	string dateiname;
	ifstream datei;
	char eingelesen[100];

	cout &lt;&lt; endl;
	cout &lt;&lt; &quot;Name der zu oeffnenden Datei: &quot;;
	cin &gt;&gt; dateiname;
	cout &lt;&lt; endl;

	// Datei zum Schreiben öffnen
	datei.open(dateiname.c_str(), ios_base::in);

	// Überschrift einlesen und auf Konsole ausgeben
	while (!datei.eof())
	{
		datei.getline(eingelesen, 100);
		cout &lt;&lt; eingelesen;
	}

	cout &lt;&lt; endl;
	cout &lt;&lt; &quot;Daten wurden eingelesen &quot; &lt;&lt; endl;

	// Datei schließen
	datei.close();

	cout &lt;&lt; endl &lt;&lt; endl;

return 0;                           
}
</code></pre>
<p>Wie mache ich das am besten? Ich bräuchte quasi sowas in der Art wenn es das geben würde:</p>
<pre><code>text[i][j] = datei.getline(eingelesen, 100);
</code></pre>
<p>Ich weiß natürlich, dass es sowas so nicht gibt, aber deshalb hab ich nachgefragt.</p>
<p>Kann mir jemand helfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/315328/von-textdatei-in-zweidimensionales-array-schreiben</link><generator>RSS for Node</generator><lastBuildDate>Fri, 31 Jul 2026 01:50:43 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/315328.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 30 Mar 2013 10:06:44 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 10:06:44 GMT]]></title><description><![CDATA[<p>Hi Leute!</p>
<p>Ich hab folgenden Code geschrieben. Der funktioniert auch soweit. Ich möchte aber nun, dass ich innerhalb der while-Schleife nicht einfach auf die Konsole ausgebe, sondern, in ein zweidimensionales Array schreibe.</p>
<pre><code>#include &lt;iostream&gt;                    
#include &lt;string&gt;
#include &lt;fstream&gt;
using namespace std;

int main()                             
{   
	string dateiname;
	ifstream datei;
	char eingelesen[100];

	cout &lt;&lt; endl;
	cout &lt;&lt; &quot;Name der zu oeffnenden Datei: &quot;;
	cin &gt;&gt; dateiname;
	cout &lt;&lt; endl;

	// Datei zum Schreiben öffnen
	datei.open(dateiname.c_str(), ios_base::in);

	// Überschrift einlesen und auf Konsole ausgeben
	while (!datei.eof())
	{
		datei.getline(eingelesen, 100);
		cout &lt;&lt; eingelesen;
	}

	cout &lt;&lt; endl;
	cout &lt;&lt; &quot;Daten wurden eingelesen &quot; &lt;&lt; endl;

	// Datei schließen
	datei.close();

	cout &lt;&lt; endl &lt;&lt; endl;

return 0;                           
}
</code></pre>
<p>Wie mache ich das am besten? Ich bräuchte quasi sowas in der Art wenn es das geben würde:</p>
<pre><code>text[i][j] = datei.getline(eingelesen, 100);
</code></pre>
<p>Ich weiß natürlich, dass es sowas so nicht gibt, aber deshalb hab ich nachgefragt.</p>
<p>Kann mir jemand helfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310966</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310966</guid><dc:creator><![CDATA[vip*r]]></dc:creator><pubDate>Sat, 30 Mar 2013 10:06:44 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 10:13:49 GMT]]></title><description><![CDATA[<p>Warum liest Du in ein char-Array ein?<br />
Warum willst Du in ein zweidimensionales Array einlesen?</p>
<p>Kannst Du nicht<br />
in einen string statt in ein char-Array einlesen und<br />
in einen vector&lt;string&gt; statt in ein zweidimensionales Array?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310969</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310969</guid><dc:creator><![CDATA[Belli]]></dc:creator><pubDate>Sat, 30 Mar 2013 10:13:49 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 10:15:19 GMT]]></title><description><![CDATA[<p>Also mal ganz langsam. Du hast in der Textdatei einfach eine Matrix, oder was?<br />
Dann sieht der Code zum Einlesen in bspw. einen Vektor so aus:</p>
<pre><code>std::ifstream is(&quot;Text.txt&quot;);
std::vector&lt;int&gt; vec( std::istream_iterator&lt;int&gt;(is), std::istream_iterator&lt;int&gt;() );
</code></pre>
<p>Wenn du anschließend die breite kennst, kannst du damit dann den eindimensionalen irgendwie aufteilen, oder Wrappen, usw.</p>
<p>(Ungetestet! <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="😃"
    /> )</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310970</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310970</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 30 Mar 2013 10:15:19 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 10:16:16 GMT]]></title><description><![CDATA[<p>Belli schrieb:</p>
<blockquote>
<p>Warum liest Du in ein char-Array ein?<br />
Warum willst Du in ein zweidimensionales Array einlesen?</p>
<p>Kannst Du nicht<br />
in einen string statt in ein char-Array einlesen und<br />
in einen vector&lt;string&gt; statt in ein zweidimensionales Array?</p>
</blockquote>
<p>Wieso schreibt ihr alle in Gedicht-Form? Mit so schönen Enjambements... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310971</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310971</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 30 Mar 2013 10:16:16 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 10:26:54 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<pre><code>std::vector&lt;int&gt; vec( std::istream_iterator&lt;int&gt;(is),std::istream_iterator&lt;int&gt;() );
</code></pre>
</blockquote>
<p>Funktionsdeklaration</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310972</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310972</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Sat, 30 Mar 2013 10:26:54 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 10:55:00 GMT]]></title><description><![CDATA[<p>Ja, der Fehler nervt.<br />
Wieso eigentlich?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310978</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310978</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Sat, 30 Mar 2013 10:55:00 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 10:56:20 GMT]]></title><description><![CDATA[<p>vip@r, du machst einige Dinge nicht richtig. Arbeitest du gerade zum ersten Mal mit fstream?</p>
<p>vip@r schrieb:</p>
<blockquote>
<pre><code>ifstream datei;
</code></pre>
</blockquote>
<p>Du hast vergessen, den Namen der Datei anzugeben. Das i in ifstream steht für input. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /> Die Angabe von ios_base::in ist natürlich unnötig. Willst du einen Dateinamen einlesen, musst du dies natürlich vor dieser Anweisung tun. Ansonsten noch ganz wichtig: RAII --&gt; Wikipedia</p>
<p>vip@r schrieb:</p>
<blockquote>
<pre><code>while (!datei.eof())
</code></pre>
</blockquote>
<p>Ohohoh, ganz, ganz fataler Fehler. Du ließt falsch. Du machst folgendes:<br />
1. Prüfen<br />
2. Lesen<br />
3. Verarbeiten<br />
Das ist natürlich Murx <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    />.</p>
<p>Du musst es natürlich so machen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    />:<br />
1. Lesen<br />
2. Prüfen<br />
3. Verarbeiten, falls erfolgreich gelesen.</p>
<p>vip@r schrieb:</p>
<blockquote>
<pre><code>datei.close();
</code></pre>
</blockquote>
<p>Wie gesagt... RAII</p>
<p>vip@r schrieb:</p>
<blockquote>
<p>Wie mache ich das am besten?</p>
</blockquote>
<p>std::vector + std::string. Falls du diese Container nicht kennst, schau sie dir an. Sie sind wichtig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310979</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310979</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Sat, 30 Mar 2013 10:56:20 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 11:10:20 GMT]]></title><description><![CDATA[<p>Nathan schrieb:</p>
<blockquote>
<p>Ja, der Fehler nervt.<br />
Wieso eigentlich?</p>
</blockquote>
<p>Du weißt ja, dass du Parameternamen weglassen darfst, nicht nur bei einer Funktionsdeklaration, auch bei einer Funktionsdefinition. Jetzt ist nur noch wichtig zu wissen, dass</p>
<pre><code>int zahl;
int(zahl);
int (zahl);
</code></pre>
<p>alles dasselbe ist. So, und wenn du so eine Zeile nun primitiv ersetzt, dann siehst du auch sofort, dass es eine Funktionsdeklaration ist.</p>
<pre><code>std::vector&lt;int&gt; vec( std::istream_iterator&lt;int&gt;(is), std::istream_iterator&lt;int&gt;() );
int vec(int (zahl),int);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2310983</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310983</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Sat, 30 Mar 2013 11:10:20 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 11:40:32 GMT]]></title><description><![CDATA[<p>Sorry, eben ungetestet. <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="😃"
    /><br />
Entweder einfach doppelt umklammern, oder seit C++11 (bzw. schon seit C++0x) einfach mit Listen-initialisierung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310988</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310988</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 30 Mar 2013 11:40:32 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 11:52:41 GMT]]></title><description><![CDATA[<p>Oh, ach so.<br />
Trotzdem blöd.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310990</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310990</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Sat, 30 Mar 2013 11:52:41 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 12:11:38 GMT]]></title><description><![CDATA[<p>Nathan schrieb:</p>
<blockquote>
<p>Oh, ach so.<br />
Trotzdem blöd.</p>
</blockquote>
<p>Willkommen bei C++. Möchten sie einen Drink?</p>
<p>Neh, aber mal ernst.</p>
<p>Wo zum Teufel braucht man lokal deklarierte Funktionen? Die Komplikationen die durch dieses &quot;Feature&quot; entstehen, werden durch den Vorteil (welcher auch immer dieser sein mag) definitiv nicht kompensiert. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310991</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310991</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 30 Mar 2013 12:11:38 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 12:21:00 GMT]]></title><description><![CDATA[<p>@out: Ja, ich arbeite heute das erste mal mit diesem ifstream.</p>
<blockquote>
<p>1. Lesen<br />
2. Prüfen<br />
3. Verarbeiten, falls erfolgreich gelesen.</p>
</blockquote>
<p>Wie würde das dann bei mir aussehen?</p>
<p>Ich bekomme aber keine Zahlen sondern strings. Ich hab hier eine Textdatei mit einem Maschinenregisterprogramm das mir mein C++ Programm irgendwann mal interpretieren soll.</p>
<p>Dazu will ich eben aus einem txt-File ein paar Zeilen einlesen, die durch &quot;;&quot; abgetrennt sind. Und da wäre mir eben spontan ein Array eingefallen das in jeder Zeile eine Anweisung stehen hat. Versteht ihr?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310992</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310992</guid><dc:creator><![CDATA[vip*r]]></dc:creator><pubDate>Sat, 30 Mar 2013 12:21:00 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 12:33:49 GMT]]></title><description><![CDATA[<p>vip@r schrieb:</p>
<blockquote>
<p>@out: Ja, ich arbeite heute das erste mal mit diesem ifstream.</p>
<blockquote>
<p>1. Lesen<br />
2. Prüfen<br />
3. Verarbeiten, falls erfolgreich gelesen.</p>
</blockquote>
<p>Wie würde das dann bei mir aussehen?</p>
</blockquote>
<p>Dazu muss ich den Aufbau deiner Datei wisse, und was du genau lesen willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2310995</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310995</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Sat, 30 Mar 2013 12:33:49 GMT</pubDate></item><item><title><![CDATA[Reply to Von Textdatei in zweidimensionales Array schreiben on Sat, 30 Mar 2013 12:35:51 GMT]]></title><description><![CDATA[<p>Also, du willst Zahlen einlesen, die durch ein ; getrennt sind?</p>
<pre><code>std::vector&lt;int&gt; numbers;
int i;
char buf;
while (file &gt;&gt; i &gt;&gt; std::ws &gt;&gt; buf)
    numbers.push_back(i);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2310996</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2310996</guid><dc:creator><![CDATA[Nathan]]></dc:creator><pubDate>Sat, 30 Mar 2013 12:35:51 GMT</pubDate></item></channel></rss>