<?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[Integer aus txt auslesen und in Array speichern.]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich habe folgendes geplant:</p>
<p>Ich habe eine txt Datei mit einer Menge Zahlen, dass ganze sieht in etwas so aus:</p>
<p>1 3 8 4 5 6 7 8 9<br />
3 4 6 3 8 6 4 3 4<br />
2 4 5 7 3 2 4 5 1<br />
2 3 4 5 6 7 8 5 3</p>
<p>usw.</p>
<p>nun möchte ich die einzelnen Zahlen gerne aus der Textdatei auslesen und in einem Array speichern.</p>
<p>Also:</p>
<p>MeinArray|0]= 1<br />
MeinArray|1]= 3<br />
MeinArray|2]= 8<br />
MeinArray|3]= 4<br />
MeinArray|4]= 5</p>
<p>usw.</p>
<p>Mein Code bislang:</p>
<pre><code class="language-cpp">int ZahlenTest;
ifstream Input (&quot;Data/Zahlen.txt&quot;, ios::binary);
if (Input == NULL)
 {
   cout &lt;&lt; &quot;Datei konnte nicht gefunden werden&quot; &lt;&lt; endl;
 }else{
   Input.read ((char*) &amp;ZahlenTest, sizeof(ZahlenTest));
   cout &lt;&lt; ZahlenTest; 
 }
Input.close();
</code></pre>
<p>Wenn in der Datei nun nur eine 1 steht, zeigt er mir später ein ^ an... .</p>
<p>Irgendwie komme ich nun nicht richtig weiter... . Ich gehe ma davon aus, dass das was ich einlese aus der Datei, ein String ist und kein Integer.</p>
<p>Wie kann ich nun den eingelesenen String in ein Int Array umwandeln wobei er bei jedem &quot;Leerzeichen&quot; Trennt ?!</p>
<p>Vielen Dank</p>
<p>Gast1985</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/225403/integer-aus-txt-auslesen-und-in-array-speichern</link><generator>RSS for Node</generator><lastBuildDate>Tue, 22 Sep 2026 12:20:41 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/225403.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 22 Oct 2008 22:49:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Integer aus txt auslesen und in Array speichern. on Wed, 22 Oct 2008 22:49:26 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich habe folgendes geplant:</p>
<p>Ich habe eine txt Datei mit einer Menge Zahlen, dass ganze sieht in etwas so aus:</p>
<p>1 3 8 4 5 6 7 8 9<br />
3 4 6 3 8 6 4 3 4<br />
2 4 5 7 3 2 4 5 1<br />
2 3 4 5 6 7 8 5 3</p>
<p>usw.</p>
<p>nun möchte ich die einzelnen Zahlen gerne aus der Textdatei auslesen und in einem Array speichern.</p>
<p>Also:</p>
<p>MeinArray|0]= 1<br />
MeinArray|1]= 3<br />
MeinArray|2]= 8<br />
MeinArray|3]= 4<br />
MeinArray|4]= 5</p>
<p>usw.</p>
<p>Mein Code bislang:</p>
<pre><code class="language-cpp">int ZahlenTest;
ifstream Input (&quot;Data/Zahlen.txt&quot;, ios::binary);
if (Input == NULL)
 {
   cout &lt;&lt; &quot;Datei konnte nicht gefunden werden&quot; &lt;&lt; endl;
 }else{
   Input.read ((char*) &amp;ZahlenTest, sizeof(ZahlenTest));
   cout &lt;&lt; ZahlenTest; 
 }
Input.close();
</code></pre>
<p>Wenn in der Datei nun nur eine 1 steht, zeigt er mir später ein ^ an... .</p>
<p>Irgendwie komme ich nun nicht richtig weiter... . Ich gehe ma davon aus, dass das was ich einlese aus der Datei, ein String ist und kein Integer.</p>
<p>Wie kann ich nun den eingelesenen String in ein Int Array umwandeln wobei er bei jedem &quot;Leerzeichen&quot; Trennt ?!</p>
<p>Vielen Dank</p>
<p>Gast1985</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1603121</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1603121</guid><dc:creator><![CDATA[Gast1985]]></dc:creator><pubDate>Wed, 22 Oct 2008 22:49:26 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus txt auslesen und in Array speichern. on Wed, 22 Oct 2008 23:20:10 GMT]]></title><description><![CDATA[<p>Was du machst, ist einfach die Bytes zu lesen und zu speichern. Anders gesagt, mit dieser Anweisung: <code>Input.read ((char*) &amp;ZahlenTest, sizeof(ZahlenTest));</code> , werden üblicherweise 4 Bytes gelesen. In einem ASCII kodiertem File 4 Zeichen. Bei deiner Formatierung, 2 Leerzeichen und 2 Zahlen. Also sicher nicht was du willst <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>Um Text einzulesen kannst du die Shiftoperatoren verwenden. Die sind da deutlich besser geeignet. Die überspringen auch Leerzeichen automatisch, was einem einen sehr einfachen Code erlaubt:</p>
<pre><code class="language-cpp">int number;
std::vector&lt;int&gt; vec;

std::ifstream file(&quot;daten/zahlen.txt&quot;);

while(file &gt;&gt; number)
{ vec.push_back(number); }
</code></pre>
<p>Das ganze lässt sich sogar noch weiter vereinfachen:</p>
<pre><code class="language-cpp">// Statt der while-Schleife, kannst du das folgende verwenden:
std::copy(std::istream_iterator&lt;int&gt;(file), std::istream_iterator&lt;int&gt;(), std::back_inserter(vec));
</code></pre>
<p>C++ Referenz: <a href="http://www.cplusplus.com/reference/" rel="nofollow">http://www.cplusplus.com/reference/</a></p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1603123</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1603123</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Wed, 22 Oct 2008 23:20:10 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus txt auslesen und in Array speichern. on Thu, 23 Apr 2009 16:13:37 GMT]]></title><description><![CDATA[<p>danke, Dravere.. leider hast du uns nicht weiter gebracht.</p>
<p>Ich hab das selbe problem und scheinbar will da keiner einem so richtig helfen oder es weiss keiner.</p>
<p>Die Frage lautet: Wie liest man Integer Zahlen aus einer Datei und speichert diese in einem Array ab..</p>
<p>mit getline, get() oder dergleichen funktuioniert es nicht. Es scheint auch als ob keine der gelisteten Operatoren in auf der cplusplus seite unter ifstream einem dabei weiter helfen.</p>
<p>Hat jemand eine Ahnung? bitte mit konkretem beispiel in C++.. es wird vielen helfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1700288</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1700288</guid><dc:creator><![CDATA[McBean]]></dc:creator><pubDate>Thu, 23 Apr 2009 16:13:37 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus txt auslesen und in Array speichern. on Thu, 23 Apr 2009 16:57:31 GMT]]></title><description><![CDATA[<p>McBean schrieb:</p>
<blockquote>
<p>[...]bitte mit konkretem beispiel[...]</p>
</blockquote>
<p>Hier ein Beispiel:</p>
<pre><code class="language-cpp">//main.cpp
#include &lt;iostream&gt;
#include &lt;fstream&gt;

int main()
{
	const unsigned int zeilen = 4;
	const unsigned int spalten = 9;
	int int_werte[zeilen][spalten];
	std::ifstream input(&quot;daten.txt&quot;);
	if(!input) {
		std::cerr &lt;&lt; &quot;Die Datei wurde nicht gefunden.&quot; &lt;&lt; std::endl;
		return -1;
	}
	// Daten Einlesen
	for(unsigned int x = 0; x != zeilen; ++x) {
		for(unsigned int y = 0; y != spalten; ++y) {
			if(!input.eof()) {
				input &gt;&gt; int_werte[x][y];
			} else {
				int_werte[x][y] = 0;
			}
		}
	}
	input.close();
	// Ausgabe
	std::cout &lt;&lt; &quot;Die Datei enthielt die folgenden Integerwerte:&quot; &lt;&lt; std::endl;
	for(unsigned int x = 0; x != zeilen; ++x) {
		for(unsigned int y = 0; y != spalten; ++y) {
			std::cout &lt;&lt; int_werte[x][y] &lt;&lt; &quot; &quot;;
		}
		std::cout &lt;&lt; std::endl;
	}

	return 0;
}
</code></pre>
<p>Inhalt von &quot;daten.txt&quot;:</p>
<pre><code>1 3 8 4 5 6 7 8 9
3 4 6 3 8 6 4 3 4
2 4 5 7 3 2 4 5 1
2 3 4 5 6 7 8 5 3
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1700303</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1700303</guid><dc:creator><![CDATA[Mizar]]></dc:creator><pubDate>Thu, 23 Apr 2009 16:57:31 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus txt auslesen und in Array speichern. on Thu, 23 Apr 2009 22:26:25 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;stdlib.h&gt;
#include &lt;stdio.h&gt;
#define INITIAL_SIZE 10

void resize_Array(int** Array,unsigned* arraySize){
 (*arraySize) &lt;&lt;= 1;
 (*Array) = (int*) realloc((*Array),(*arraySize)*sizeof(int));
}

int main(){
 unsigned counter = 0, arraySize = INITIAL_SIZE;
 int* Array = (int*) calloc(arraySize,sizeof(int));
 FILE* myFile = fopen(&quot;Filename.txt&quot;,&quot;r&quot;); /* Setzt voraus, dass im Programmverzeichnis
										   eine derartige Datei mit diesem Namen existiert */
 if(!myFile){
  printf(&quot;Datei nicht gefunden&quot;);
  return 0;
 }
 while(counter &lt; arraySize){
  if(fscanf(myFile,&quot;%d&quot;,(Array + counter)) != 1)
   break;
  else{
   ++counter;
   if(counter == arraySize)
	resize_Array(&amp;Array,&amp;arraySize);
  }
 }

 printf(&quot;Folgende Werte konnten erfolgreich eingelesen werden: \n&quot;);
 for(unsigned i = 0; i &lt; counter; ++i)
  printf(&quot;%d \n&quot;,Array[i]);
 fgetc(stdin); /* nur noetig, wenn Konsolenfenster automatisch geschlossen werden */

 return 0;
}

/* Nur rudimentaer getestet -&gt; Das Programm tat dabei, was es sollte (zumindest auf
   meinem Rechner ...), d.h. alle Zahlen aus der Datei wurden gelesen.
 der Compiler (MS_VC++ 2008 Express) verweigert auch nicht die Uebersetzung. 
Es duerfte deshalb vermutlich noch so halbwegs im Standard_Rahmen sein, auch wenn's 
most obfuscated aussieht.
*/
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1700478</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1700478</guid><dc:creator><![CDATA[Metatron]]></dc:creator><pubDate>Thu, 23 Apr 2009 22:26:25 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus txt auslesen und in Array speichern. on Thu, 23 Apr 2009 22:39:17 GMT]]></title><description><![CDATA[<p>McBean schrieb:</p>
<blockquote>
<p>Die Frage lautet: Wie liest man Integer Zahlen aus einer Datei und speichert diese in einem Array ab..</p>
</blockquote>
<p>Aber genau das macht Draveres Code doch. Hier mal der komplette Code, inklusive includes:</p>
<pre><code class="language-cpp">#include &lt;fstream&gt;
#include &lt;vector&gt;
#include &lt;algorithm&gt;
#include &lt;iostream&gt;
using namespace std;

int main()
{
	// Datei öffnen
	ifstream file( &quot;bla.txt&quot; );
	if ( ! file )
		return 1;

	// Alle Werte einlesen
	vector&lt;int&gt; values;
	copy( istream_iterator&lt;int&gt;(file), istream_iterator&lt;int&gt;(), back_inserter(values) );

	// Ausgabe
	cout &lt;&lt; values.size() &lt;&lt; &quot; Werte ausgelesen:\n&quot;;
	copy( values.begin(), values.end(), ostream_iterator&lt;int&gt;(cout,&quot; &quot;) );
	cout &lt;&lt; endl;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1700482</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1700482</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Thu, 23 Apr 2009 22:39:17 GMT</pubDate></item></channel></rss>