<?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 Datei lesen und in Vector speichern]]></title><description><![CDATA[<p>Hallo,<br />
ich habe eine .txt-Datei, in der in jeder Zeile 3 Integer stehen. Die erste Zahl soll in graph[i].from, die 2. in graph[i].to und die 3. in graph[i].cost gespeichert werden. Ich will dafür den STL-vector mit Elementen meiner Klasse, die aus den 3 Integer-Variablen &quot;from&quot;,&quot;to&quot; und &quot;cost&quot; besteht, benutzen. In C hab ich das mit einem Struct schon gemacht und zum Auslesen fscanf() benutzt. Das sah dann so aus:</p>
<pre><code class="language-cpp">for(i=0;i&lt;=(edges-1);++i){                                   /*Einlesen der Knoten Kanten und Kosten*/
		fscanf(datei,&quot;%i%i%i&quot;,&amp;graph[i].from,&amp;graph[i].to,&amp;graph[i].cost);
	}
</code></pre>
<p>Ich hab keine Ahnung, wie das in C++ geht, da man scanf() soweit ich wiess vermeiden sollte.</p>
<p>Hoffe ich hab genug Infos gegeben und mir kann jemand weiterhelfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/249659/integer-aus-datei-lesen-und-in-vector-speichern</link><generator>RSS for Node</generator><lastBuildDate>Wed, 16 Sep 2026 10:08:36 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/249659.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 10 Sep 2009 12:51:38 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Integer aus Datei lesen und in Vector speichern on Thu, 10 Sep 2009 12:51:38 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich habe eine .txt-Datei, in der in jeder Zeile 3 Integer stehen. Die erste Zahl soll in graph[i].from, die 2. in graph[i].to und die 3. in graph[i].cost gespeichert werden. Ich will dafür den STL-vector mit Elementen meiner Klasse, die aus den 3 Integer-Variablen &quot;from&quot;,&quot;to&quot; und &quot;cost&quot; besteht, benutzen. In C hab ich das mit einem Struct schon gemacht und zum Auslesen fscanf() benutzt. Das sah dann so aus:</p>
<pre><code class="language-cpp">for(i=0;i&lt;=(edges-1);++i){                                   /*Einlesen der Knoten Kanten und Kosten*/
		fscanf(datei,&quot;%i%i%i&quot;,&amp;graph[i].from,&amp;graph[i].to,&amp;graph[i].cost);
	}
</code></pre>
<p>Ich hab keine Ahnung, wie das in C++ geht, da man scanf() soweit ich wiess vermeiden sollte.</p>
<p>Hoffe ich hab genug Infos gegeben und mir kann jemand weiterhelfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1775835</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1775835</guid><dc:creator><![CDATA[alx3400]]></dc:creator><pubDate>Thu, 10 Sep 2009 12:51:38 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus Datei lesen und in Vector speichern on Thu, 10 Sep 2009 13:07:18 GMT]]></title><description><![CDATA[<p>Hier mal das Einlesen der Datei:</p>
<pre><code class="language-cpp">using namespace std;

#include &lt;fstream&gt;
#include &lt;string&gt;

ifstream FileIn(&quot;test.txt&quot;);
if (FileIn) 
{
    // Solange kein Fehler auftritt und nicht eof
    for ( string ReadString; getline(FileIn, ReadString); )        
    {
       // hier kommt ein Textparser hin, der die einzeln integerwerte rausparst.

    }           
}
</code></pre>
<p>Dann musst du dir noch einen Textparser programmieren, der einen String in seine Einzelteile zerlegt. Ich hab mir mal irgendwann sowas geschrieben. Den brauch man öfter mal.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1775851</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1775851</guid><dc:creator><![CDATA[It0101]]></dc:creator><pubDate>Thu, 10 Sep 2009 13:07:18 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus Datei lesen und in Vector speichern on Thu, 10 Sep 2009 13:19:05 GMT]]></title><description><![CDATA[<p>Danke.</p>
<p>Allerdings hatte eigentlich vor, genau das nicht machen zu müssen, sondern die Werte eben nicht als String, sondern direkt als Zahlen aus der Datei zu lesen. So wie das in dem Beispiel mit dem fscanf() gemacht wurde. Vielleicht ist das aber auch einfach keine gute Idee, keine Ahnung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1775862</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1775862</guid><dc:creator><![CDATA[alx3400]]></dc:creator><pubDate>Thu, 10 Sep 2009 13:19:05 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus Datei lesen und in Vector speichern on Thu, 10 Sep 2009 13:32:50 GMT]]></title><description><![CDATA[<p>Wenn nur die 3 Integer pro Zeile dort sind, kannst du das somachen:</p>
<pre><code class="language-cpp">std::ifstream in ( &quot;file.txt&quot; );
for (int i = 0; i &lt; edges; ++i )
 in &gt;&gt; graph[i].from &gt;&gt; graph[i].to &gt;&gt; graph[i].cost;
</code></pre>
<p>Wenn noch andere Sachen vorkommen, dann must du die halt auch einlesen. (und dann halt verwerfen, wenn sie nicht benötig werden).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1775879</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1775879</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Thu, 10 Sep 2009 13:32:50 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus Datei lesen und in Vector speichern on Thu, 10 Sep 2009 14:11:47 GMT]]></title><description><![CDATA[<p>Irgendwie scheint es da noch Probleme zu geben.</p>
<p>Hier mal ein Bespiel:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;
using namespace std;

int k=3,l=2;

int main(){
	std::ifstream in ( &quot;C:\test.txt&quot; ); 
	in &gt;&gt; k &gt;&gt; l ;
	cout &lt;&lt; &quot;\nk: &quot; &lt;&lt; k &lt;&lt; &quot;\tl: &quot; &lt;&lt; l;
	return 0;
}
</code></pre>
<p>In C:\test.txt steht nichts ausser einer 1, dann ein Leerzeichen und dann eine 4.</p>
<p>Die Ausgabe des Programms ist trotzdem &quot; k: 3 l: 2&quot;.</p>
<p>Das versteh ich gar nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1775921</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1775921</guid><dc:creator><![CDATA[alx3400]]></dc:creator><pubDate>Thu, 10 Sep 2009 14:11:47 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus Datei lesen und in Vector speichern on Thu, 10 Sep 2009 14:15:44 GMT]]></title><description><![CDATA[<p>Du solltest prüfen ob die Datei überhaupt offen ist.</p>
<p>und mach mal aus &quot;C:\Text.txt&quot; -&gt; &quot;C:/Text.txt&quot;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1775924</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1775924</guid><dc:creator><![CDATA[It0101]]></dc:creator><pubDate>Thu, 10 Sep 2009 14:15:44 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus Datei lesen und in Vector speichern on Thu, 10 Sep 2009 15:59:06 GMT]]></title><description><![CDATA[<p>Oh Mann, es war tatsächglich &quot;/&quot; statt &quot;\&quot;, blöder Fehler.</p>
<p>Eins noch: Was mach ich denn, wenn &quot;from&quot;,&quot;to&quot; und &quot;cost&quot; private Datenelemente sind und ich da nur über Funktionen in der Klasse rankomme? Ich könnte natürlich erst die Werte in 3 Hilfsvariablen einlesen und dann nach dem Auslesen der 3 Werte an die Funktionen übergeben, aber das geht doch bestimmt eleganter.</p>
<p>Danke schonmal für die tolle Hilfe hier.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1776023</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1776023</guid><dc:creator><![CDATA[alx3400]]></dc:creator><pubDate>Thu, 10 Sep 2009 15:59:06 GMT</pubDate></item><item><title><![CDATA[Reply to Integer aus Datei lesen und in Vector speichern on Thu, 10 Sep 2009 16:10:47 GMT]]></title><description><![CDATA[<p>alx3400 schrieb:</p>
<blockquote>
<p>Oh Mann, es war tatsächglich &quot;/&quot; statt &quot;\&quot;, blöder Fehler.</p>
<p>Eins noch: Was mach ich denn, wenn &quot;from&quot;,&quot;to&quot; und &quot;cost&quot; private Datenelemente sind und ich da nur über Funktionen in der Klasse rankomme? Ich könnte natürlich erst die Werte in 3 Hilfsvariablen einlesen und dann nach dem Auslesen der 3 Werte an die Funktionen übergeben, aber das geht doch bestimmt eleganter.</p>
<p>Danke schonmal für die tolle Hilfe hier.</p>
</blockquote>
<p>dazu überlädst du am besten den operator &gt;&gt; für deine Klasse.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1776031</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1776031</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Thu, 10 Sep 2009 16:10:47 GMT</pubDate></item></channel></rss>