<?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[In nächste Zeile springen]]></title><description><![CDATA[<p>Hallo,<br />
ich sitze mal wieder vor meinem PC und hab da ein kleines Problem mit meinem Programm.<br />
Ich hab in einem größeren Programm ein kleinen Teil, der ein .txt File nach einem bestimmten Keyword durchsucht. Findet er das Keyword, dann führt er ein bestimmte Aktion aus, wenn nicht dann was anders.<br />
Nun hab ich aber das Problem, dass wenn er das Keyword findet, genau eine Zeile tiefer in dem Textfile springen soll, quasi Zeile +1 um da ein Keyword zu suchen, was auf das andere folgt.<br />
z.B.:<br />
Das Keyword ist Autohaus und eine Zeile darunter ist das nächste Keyword: AnzAutos = 5.<br />
Dieses AnzAutos = 5 muss ich findet, da ich die Zahl 5 für den weitern ablauf meines Programms benötige.<br />
Nun habe ich aber keine Ahnung, wie ich das mit Hilfe meines schon bestehenden Codes erweitere.</p>
<pre><code>while(getline(data,zeile)) 
	{ 
	size_t pPosn = zeile.find(&quot;Autohaus&quot;); 
	if (pPosn!=string::npos) 
{ 
TRACE(&quot;gefunden Pos: %d - %s\n&quot;,pPosn,(zeile.substr(pPosn)+&quot;?&quot;).c_str()); 
m_ctlLISTOUTPUT.AddString(zeile.substr(pPosn,8).c_str());
}				
}
</code></pre>
<p>Ich wäre für eure Hilfe äußerst dankbar:)</p>
<p>Grüße<br />
TheRod</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/187801/in-nächste-zeile-springen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 12 Apr 2026 12:43:18 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/187801.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 24 Jul 2007 09:33:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to In nächste Zeile springen on Tue, 24 Jul 2007 09:33:59 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich sitze mal wieder vor meinem PC und hab da ein kleines Problem mit meinem Programm.<br />
Ich hab in einem größeren Programm ein kleinen Teil, der ein .txt File nach einem bestimmten Keyword durchsucht. Findet er das Keyword, dann führt er ein bestimmte Aktion aus, wenn nicht dann was anders.<br />
Nun hab ich aber das Problem, dass wenn er das Keyword findet, genau eine Zeile tiefer in dem Textfile springen soll, quasi Zeile +1 um da ein Keyword zu suchen, was auf das andere folgt.<br />
z.B.:<br />
Das Keyword ist Autohaus und eine Zeile darunter ist das nächste Keyword: AnzAutos = 5.<br />
Dieses AnzAutos = 5 muss ich findet, da ich die Zahl 5 für den weitern ablauf meines Programms benötige.<br />
Nun habe ich aber keine Ahnung, wie ich das mit Hilfe meines schon bestehenden Codes erweitere.</p>
<pre><code>while(getline(data,zeile)) 
	{ 
	size_t pPosn = zeile.find(&quot;Autohaus&quot;); 
	if (pPosn!=string::npos) 
{ 
TRACE(&quot;gefunden Pos: %d - %s\n&quot;,pPosn,(zeile.substr(pPosn)+&quot;?&quot;).c_str()); 
m_ctlLISTOUTPUT.AddString(zeile.substr(pPosn,8).c_str());
}				
}
</code></pre>
<p>Ich wäre für eure Hilfe äußerst dankbar:)</p>
<p>Grüße<br />
TheRod</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331339</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331339</guid><dc:creator><![CDATA[TheRod]]></dc:creator><pubDate>Tue, 24 Jul 2007 09:33:59 GMT</pubDate></item><item><title><![CDATA[Reply to In nächste Zeile springen on Tue, 24 Jul 2007 09:43:30 GMT]]></title><description><![CDATA[<p>Nach dem getline() steht der Lesezeiger schon auf dem Anfang der nächsten Dateizeile. Jetzt mußt du diese Zeile nur noch einlesen und auseinandernehmen, um an die 5 heranzukommen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331353</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331353</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 24 Jul 2007 09:43:30 GMT</pubDate></item><item><title><![CDATA[Reply to In nächste Zeile springen on Tue, 24 Jul 2007 09:55:38 GMT]]></title><description><![CDATA[<p>Du meinst, da es ja eine While-Loop ist, ist die Loop beim nächsten durchgang schon in der nächsten Zeile?!<br />
Das Problem liegt aber glaub ich darin, dass nach dem geposteted Codefragment noch eine Menge kommt, die auf dem Finden des Keywords aufbaut. Dass heißt, dass ich das Finden des ersten Keywords, das Springen in die nächste Zeile und wiederrum das Finden des neuen Keywords in der neuen Zeile(Zeile+1), in einem Druchgang passieren muss, also die Loop garnicht in die nächste Zeile springen kann.<br />
Kannst du das ungefähr nachvollziehen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331362</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331362</guid><dc:creator><![CDATA[TheRod]]></dc:creator><pubDate>Tue, 24 Jul 2007 09:55:38 GMT</pubDate></item><item><title><![CDATA[Reply to In nächste Zeile springen on Tue, 24 Jul 2007 09:59:54 GMT]]></title><description><![CDATA[<p>Das hat mit der while-Schleife nichts zu tun, das macht das getline() ganz von alleine: Es liest von der aktuellen Position alles bis einschließlich des Zeilenendes ein, wirft das \n weg und gibt den Rest der Zeile zurück. Das bedeutet, du kannst ganz einfach weiterlesen, um die nächsten Eingaben aus der Datei zu erhalten:</p>
<pre><code class="language-cpp">while(getline(data,zeile)) 
    { 
    size_t pPosn = zeile.find(&quot;Autohaus&quot;); 
    if (pPosn!=string::npos) 
    { 
        TRACE(&quot;gefunden Pos: %d - %s\n&quot;,pPosn,(zeile.substr(pPosn)+&quot;?&quot;).c_str()); 
        m_ctlLISTOUTPUT.AddString(zeile.substr(pPosn,8).c_str());
        string naechste_zeile;
        getline(data,nachste_zeile);
        ...
    }                
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1331368</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331368</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 24 Jul 2007 09:59:54 GMT</pubDate></item><item><title><![CDATA[Reply to In nächste Zeile springen on Tue, 24 Jul 2007 10:02:41 GMT]]></title><description><![CDATA[<p>Ahhh, jetzt verstehe ich was du meinst!!!!<br />
Stimmt daran hab ich garnicht gedacht. Ich war immer so auf die Loop fixiert. dass ich das völlig übersehen hab.<br />
Vielen Dank für dein Hilfe. <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="🙂"
    /><br />
Ich werde das gleich mal ausprobieren!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331371</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331371</guid><dc:creator><![CDATA[TheRod]]></dc:creator><pubDate>Tue, 24 Jul 2007 10:02:41 GMT</pubDate></item><item><title><![CDATA[Reply to In nächste Zeile springen on Tue, 24 Jul 2007 10:23:16 GMT]]></title><description><![CDATA[<p>Hey super, das hat geklappt.<br />
Ich hab mir zur Überprüfung danach noch in einer MessageBox die komplette nächste Zeile anezigen lassen und es sieht gut aus <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>
<pre><code>getline(data,naechste_zeile);
ize_t tPosn = naechste_zeile.find(&quot;AnzAutos&quot;);
TRACE(&quot;gefunden Pos: %d - %s\n&quot;,tPosn,(naechste_zeile.substr(tPosn)+&quot;?&quot;).c_str());
m_ctlLISTOUTPUT.AddString(naechste_zeile.substr(tPosn,8).c_str());
</code></pre>
<p>Nun hab ich aber noch ne klitze kleine Frage.<br />
Wie kann ich denn nun die Zahl hinter dem AnzAutos = 4 sondieren.<br />
Ich muss sie dann noch irgendwie umwandeln, dass mein Programm weiß:<br />
aha, die Zahl 4 heißt das und das 4 mal ausgeben.<br />
Hättest du da noch einen Tip für mich?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331390</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331390</guid><dc:creator><![CDATA[TheRod]]></dc:creator><pubDate>Tue, 24 Jul 2007 10:23:16 GMT</pubDate></item><item><title><![CDATA[Reply to In nächste Zeile springen on Tue, 24 Jul 2007 10:35:30 GMT]]></title><description><![CDATA[<p>Zunächst mußt du dir den Teil hinter dem &quot;=&quot; aus der Zeile herausschneiden (mit find() und substr()) - und dann in eine Zahl umwandeln (siehe C++ FAQ &quot;einmal Zahl und zurück&quot;).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331397</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331397</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 24 Jul 2007 10:35:30 GMT</pubDate></item><item><title><![CDATA[Reply to In nächste Zeile springen on Tue, 24 Jul 2007 16:57:52 GMT]]></title><description><![CDATA[<p>Ich hab dazu noch eine Frage.<br />
Was ist denn, wenn ich nicht weiß, welche Zahl sich sich hinter dem &quot;=&quot; befindet.<br />
Kann ich das trotzdem mit find() uns substr() machen?<br />
Das einzige was ich weiß, ist das sich hinter dem gefunden String ein &quot;= Zahl&quot; befindet. Diese kann auch 2 Stellen haben.</p>
<p>Danke für eure Hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331685</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331685</guid><dc:creator><![CDATA[TheRod]]></dc:creator><pubDate>Tue, 24 Jul 2007 16:57:52 GMT</pubDate></item><item><title><![CDATA[Reply to In nächste Zeile springen on Wed, 25 Jul 2007 06:21:47 GMT]]></title><description><![CDATA[<p>Du suchst mit find() das = Zeichen und schneidest anschließend mit substr() alles aus dem String heraus, was dahinter steht. Anschließend kannst du den rausgeschnittenen Teil nehmen und in einen int umwandeln (wie das geht, erfährst du immer noch in der C++ FAQ).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331979</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331979</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 25 Jul 2007 06:21:47 GMT</pubDate></item><item><title><![CDATA[Reply to In nächste Zeile springen on Wed, 25 Jul 2007 07:58:50 GMT]]></title><description><![CDATA[<p>Ich hab das jetzt mal versucht hinzubekommen und es hat geklappt.</p>
<pre><code>size_t tPosn = naechste_zeile.find(&quot;AnzAutos = &quot;);

//Schneidet die ersten 2 Char nach dem &quot;AnzAutos = &quot; aus
m_ctlLISTOUTPUT.AddString(naechste_zeile.substr(tPosn+11,2).c_str());
CString number = naechste_zeile.substr(tPosn+11,2).c_str();

//CString wird in Int umgewandelt
int real_number = atoi(number);
</code></pre>
<p>Ich kann damit jetzt alle 2stelligen Zahlen nach dem AnzAutos raussuchen und umwandeln.</p>
<p>Kennst du noch eine elegantere Lösung?<br />
Ansnsten vielen Danke für deine Hilfe und die Tipps.<br />
Die waren echt Gold wert <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>Grüße<br />
TheRod</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332015</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332015</guid><dc:creator><![CDATA[TheRod]]></dc:creator><pubDate>Wed, 25 Jul 2007 07:58:50 GMT</pubDate></item><item><title><![CDATA[Reply to In nächste Zeile springen on Wed, 25 Jul 2007 08:17:45 GMT]]></title><description><![CDATA[<p>Ja, die Zwischenumwandlung in einen CString kannst du weglassen. (und wenn du das &quot;,2&quot; bei den substr()-Aufrufen weglässt, schluckt der Code sogar Eingaben, die mehr als 2 Stellen haben)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332034</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332034</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 25 Jul 2007 08:17:45 GMT</pubDate></item><item><title><![CDATA[Reply to In nächste Zeile springen on Wed, 25 Jul 2007 10:15:30 GMT]]></title><description><![CDATA[<p>Nochmals vielen Dank für deine tatkräftige Hilfe.<br />
Das klappt alles wie am Schnürrchen <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>Grüße<br />
TheRod</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1332145</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1332145</guid><dc:creator><![CDATA[TheRod]]></dc:creator><pubDate>Wed, 25 Jul 2007 10:15:30 GMT</pubDate></item></channel></rss>