<?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[Einzelne Zeilen ausgeben]]></title><description><![CDATA[<p>Schlagt mich bitte nicht, ich bin neu hier und habe versucht soviel wie möglich über mein Problem in Erfahrung zubringen.<br />
Ich habe es mir zur Aufgabe eine Textdatei nach bestimmten „Werten“ durchsuchen zu können.<br />
Kommt dieser Wert vor, soll die ganze Zeile (in der der Wert amsteht) im String in einen weiteren String kopiert und bis zum ende der Datei weitergesucht werden. Der gesuchte Wert steht immer am Anfang der der Zeile.<br />
Leider schaffe ich es nur die Datei nach dem Wert zu durchsuchen und die Position der gefunden Werte auszugeben.</p>
<p>Vielleicht kennt Ihr ja eine Möglichkeit und könnt helfen.</p>
<pre><code>#include &lt;Windows.h&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string&gt;
#include &lt;iterator&gt;
#include &lt;sstream&gt;
#include &lt;vector&gt; 

using namespace std;

int main()
{

	char	 path1[MAX_PATH + 1] = { 0 };
	OPENFILENAME datei1 = { sizeof(OPENFILENAME), 0, 0, &quot;*.txt\0\0&quot;, 0, 0, 0, path1, MAX_PATH, 0, 0, &quot;.\\&quot;, &quot;Ansys - Datei Auswählen&quot;, 0 };

	if (FALSE == GetOpenFileName(&amp;datei1))
	{
		MessageBox(0, &quot;Ungültige Datei!&quot;, &quot;Fehler&quot;, 0); /*Fehler bei Dateiauswahl*/
		return 0;
	}
	else
		MessageBox(0, path1, &quot;O.K.&quot;, MB_ICONQUESTION);	/*Richtige bei Dateiauswahl*/

	char	 path2[MAX_PATH + 1] = { 0 };
	OPENFILENAME datei2 = { sizeof(OPENFILENAME), 0, 0, &quot;*.txt\0\0&quot;, 0, 0, 0, path2, MAX_PATH, 0, 0, &quot;.\\&quot;, &quot;OpenGeoSys - Datei Auswählen&quot;, 0 };

	// Beginn auslesen der Datei mit dem &quot;Path1&quot;
	cout &lt;&lt; &quot;Ansys - Dateipfad:&quot; &lt;&lt; path1 &lt;&lt; endl;
	cout &lt;&lt; endl;

	ifstream in(path1);
	ostringstream s;
	s &lt;&lt; in.rdbuf(); // std::ostream&amp; operator&lt;&lt;(std::ostream&amp;, std::streambuf*) liest den kompletten Inhalt 
	string myData = s.str();
	// Ende auslesen der Datei mit dem &quot;Path1&quot;

	//String myData nach &quot;510&quot; Durchsuchen
	std::string zeile(myData);
	std::string suche(&quot;510&quot;);
	std::vector&lt;std::string::size_type&gt; positionen; // lieber ein std::vector als ein Array 
	std::string::size_type cur_pos = zeile.find(suche); // erstes Auftreten finden 
	while (cur_pos != std::string::npos) { // falls etwas gefunden wurde -&gt; weitersuchen 
		positionen.push_back(cur_pos);
		cur_pos = zeile.find(suche, ++cur_pos); // ++cur_pos um ab der nächsten Position zu suchen 
	}
				for (std::vector&lt;std::string::size_type&gt;::const_iterator beg(positionen.begin()), end(positionen.end()); beg != end; ++beg)	

		std::cout &lt;&lt; &quot;Position -&gt; &quot; &lt;&lt; *beg &lt;&lt; &quot;\n&quot;;

	getchar();

	return 0;
}
</code></pre>
<p>Beispiel Datei:</p>
<pre><code>514,6,7,1,9,1,11,1,13,1,15,1,17,1;                                     5P      3
510,55,1,1,19;                                                         7P      4
510,57,1,1,21;                                                         9P      5
510,59,1,1,23;                                                        11P      6
510,61,1,1,25;                                                        13P      7
510,63,1,1,27;                                                        15P      8
510,65,1,1,29;                                                        17P      9
508,4,0,69,1,0,0,0,69,2,1,0,0,69,3,0,0,0,69,4,0,0;                    19P     10
508,4,0,69,5,0,0,0,69,4,1,0,0,69,6,0,0,0,69,7,0,0;                    21P     11
508,4,0,69,8,0,0,0,69,7,1,0,0,69,9,0,0,0,69,10,0,0;                   23P     12
508,4,0,69,11,0,0,0,69,10,1,0,0,69,12,0,0,0,69,2,0,0;                 25P     13
508,4,0,69,11,1,0,0,69,1,1,0,0,69,5,1,0,0,69,8,1,0;                   27P     14
508,4,0,69,12,1,0,0,69,9,1,0,0,69,6,1,0,0,69,3,1,0;                   29P     15
126,1,1,0,0,1,0,0.,0.,4.,4.,1.,1.,30.,0.,0.,30.,0.,40.,0.,4.,0.,      31P     16
0.,0.;                                                                31P     17
126,1,1,0,0,1,0,0.,0.,6.,6.,1.,1.,30.,0.,0.,30.,60.,0.,0.,6.,0.,      33P     18
0.,0.;                                                                33P     19
126,1,1,0,0,1,0,-4.,-4.,0.,0.,1.,1.,30.,60.,40.,30.,60.,0.,-4.,       35P     20
0.,0.,0.,0.;                                                          35P     21
126,1,1,0,0,1,0,0.,0.,6.,6.,1.,1.,30.,0.,40.,30.,60.,40.,0.,6.,       37P     22
0.,0.,0.;                                                             37P     23
126,1,1,0,0,1,0,0.,0.,3.,3.,1.,1.,30.,0.,40.,                         39P     24
4.44089209850063D-015,0.,40.,0.,3.,0.,0.,0.;                          39P     25
126,1,1,0,0,1,0,-3.,-3.,0.,0.,1.,1.,4.44089209850063D-015,60.,        41P     26
40.,30.,60.,40.,-3.,0.,0.,0.,0.;                                      41P     27
126,1,1,0,0,1,0,0.,0.,6.,6.,1.,1.,4.44089209850062D-015,0.,40.,       43P     28
4.44089209850062D-015,60.,40.,0.,6.,0.,0.,0.;                         43P     29
126,1,1,0,0,1,0,0.,0.,4.,4.,1.,1.,4.44089209850062D-015,0.,40.,       45P     30
0.,0.,0.,0.,4.,0.,0.,0.;                                              45P     31
126,1,1,0,0,1,0,-4.,-4.,0.,0.,1.,1.,0.,60.,0.,                        47P     32
4.44089209850062D-015,60.,40.,-4.,0.,0.,0.,0.;                        47P     33
126,1,1,0,0,1,0,0.,0.,6.,6.,1.,1.,0.,0.,0.,0.,60.,0.,0.,6.,0.,        49P     34
0.,0.;                                                                49P     35
126,1,1,0,0,1,0,0.,0.,3.,3.,1.,1.,0.,0.,0.,30.,0.,0.,0.,3.,0.,        51P     36
0.,0.;                                                                51P     37
126,1,1,0,0,1,0,-3.,-3.,0.,0.,1.,1.,30.,60.,0.,0.,60.,0.,-3.,0.,      53P     38
0.,0.,0.;                                                             53P     39
128,1,1,1,1,0,0,1,0,0,0.,0.,4.,4.,0.,0.,6.,6.,1.,1.,1.,1.,30.,        55P     40
0.,40.,30.,0.,0.,30.,60.,40.,30.,60.,0.,0.,4.,0.,6.;                  55P     41
128,1,1,1,1,0,0,1,0,0,-1.97215226305253D-031,                         57P     42
-1.97215226305253D-031,3.,3.,0.,0.,6.,6.,1.,1.,1.,1.,                 57P     43
4.44089209850062D-015,0.,40.,30.,0.,40.,4.44089209850062D-015,        57P     44
60.,40.,30.,60.,40.,-1.97215226305253D-031,3.,0.,6.;                  57P     45
128,1,1,1,1,0,0,1,0,0,0.,0.,4.,4.,0.,0.,6.,6.,1.,1.,1.,1.,0.,0.,      59P     46
0.,4.44089209850062D-015,0.,40.,0.,60.,0.,4.44089209850062D-015,      59P     47
60.,40.,0.,4.,0.,6.;                                                  59P     48
128,1,1,1,1,0,0,1,0,0,0.,0.,3.,3.,0.,0.,6.,6.,1.,1.,1.,1.,30.,        61P     49
0.,0.,0.,0.,0.,30.,60.,0.,0.,60.,0.,0.,3.,0.,6.;                      61P     50
128,1,1,1,1,0,0,1,0,0,-2.,-2.,2.,2.,-1.5,-1.5,1.5,1.5,1.,1.,1.,       63P     51
1.,0.,0.,40.,0.,0.,0.,30.,0.,40.,30.,0.,0.,-2.,2.,-1.5,1.5;           63P     52
128,1,1,1,1,0,0,1,0,0,-2.,-2.,2.,2.,-1.5,-1.5,1.5,1.5,1.,1.,1.,       65P     53
1.,0.,60.,0.,0.,60.,40.,30.,60.,0.,30.,60.,40.,-2.,2.,-1.5,1.5;       65P     54
502,8,30.,0.,0.,30.,0.,40.,30.,60.,0.,30.,60.,40.,                    67P     55
4.44089209850062D-015,0.,40.,4.44089209850062D-015,60.,40.,0.,        67P     56
0.,0.,0.,60.,0.;                                                      67P     57
504,12,31,67,1,67,2,33,67,1,67,3,35,67,4,67,3,37,67,2,67,4,39,        69P     58
67,2,67,5,41,67,6,67,4,43,67,5,67,6,45,67,5,67,7,47,67,8,67,6,        69P     59
</code></pre>
<p>VG Nubivec <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/324577/einzelne-zeilen-ausgeben</link><generator>RSS for Node</generator><lastBuildDate>Tue, 14 Jul 2026 00:11:23 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/324577.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 22 Mar 2014 23:58:46 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Einzelne Zeilen ausgeben on Sat, 22 Mar 2014 23:58:46 GMT]]></title><description><![CDATA[<p>Schlagt mich bitte nicht, ich bin neu hier und habe versucht soviel wie möglich über mein Problem in Erfahrung zubringen.<br />
Ich habe es mir zur Aufgabe eine Textdatei nach bestimmten „Werten“ durchsuchen zu können.<br />
Kommt dieser Wert vor, soll die ganze Zeile (in der der Wert amsteht) im String in einen weiteren String kopiert und bis zum ende der Datei weitergesucht werden. Der gesuchte Wert steht immer am Anfang der der Zeile.<br />
Leider schaffe ich es nur die Datei nach dem Wert zu durchsuchen und die Position der gefunden Werte auszugeben.</p>
<p>Vielleicht kennt Ihr ja eine Möglichkeit und könnt helfen.</p>
<pre><code>#include &lt;Windows.h&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string&gt;
#include &lt;iterator&gt;
#include &lt;sstream&gt;
#include &lt;vector&gt; 

using namespace std;

int main()
{

	char	 path1[MAX_PATH + 1] = { 0 };
	OPENFILENAME datei1 = { sizeof(OPENFILENAME), 0, 0, &quot;*.txt\0\0&quot;, 0, 0, 0, path1, MAX_PATH, 0, 0, &quot;.\\&quot;, &quot;Ansys - Datei Auswählen&quot;, 0 };

	if (FALSE == GetOpenFileName(&amp;datei1))
	{
		MessageBox(0, &quot;Ungültige Datei!&quot;, &quot;Fehler&quot;, 0); /*Fehler bei Dateiauswahl*/
		return 0;
	}
	else
		MessageBox(0, path1, &quot;O.K.&quot;, MB_ICONQUESTION);	/*Richtige bei Dateiauswahl*/

	char	 path2[MAX_PATH + 1] = { 0 };
	OPENFILENAME datei2 = { sizeof(OPENFILENAME), 0, 0, &quot;*.txt\0\0&quot;, 0, 0, 0, path2, MAX_PATH, 0, 0, &quot;.\\&quot;, &quot;OpenGeoSys - Datei Auswählen&quot;, 0 };

	// Beginn auslesen der Datei mit dem &quot;Path1&quot;
	cout &lt;&lt; &quot;Ansys - Dateipfad:&quot; &lt;&lt; path1 &lt;&lt; endl;
	cout &lt;&lt; endl;

	ifstream in(path1);
	ostringstream s;
	s &lt;&lt; in.rdbuf(); // std::ostream&amp; operator&lt;&lt;(std::ostream&amp;, std::streambuf*) liest den kompletten Inhalt 
	string myData = s.str();
	// Ende auslesen der Datei mit dem &quot;Path1&quot;

	//String myData nach &quot;510&quot; Durchsuchen
	std::string zeile(myData);
	std::string suche(&quot;510&quot;);
	std::vector&lt;std::string::size_type&gt; positionen; // lieber ein std::vector als ein Array 
	std::string::size_type cur_pos = zeile.find(suche); // erstes Auftreten finden 
	while (cur_pos != std::string::npos) { // falls etwas gefunden wurde -&gt; weitersuchen 
		positionen.push_back(cur_pos);
		cur_pos = zeile.find(suche, ++cur_pos); // ++cur_pos um ab der nächsten Position zu suchen 
	}
				for (std::vector&lt;std::string::size_type&gt;::const_iterator beg(positionen.begin()), end(positionen.end()); beg != end; ++beg)	

		std::cout &lt;&lt; &quot;Position -&gt; &quot; &lt;&lt; *beg &lt;&lt; &quot;\n&quot;;

	getchar();

	return 0;
}
</code></pre>
<p>Beispiel Datei:</p>
<pre><code>514,6,7,1,9,1,11,1,13,1,15,1,17,1;                                     5P      3
510,55,1,1,19;                                                         7P      4
510,57,1,1,21;                                                         9P      5
510,59,1,1,23;                                                        11P      6
510,61,1,1,25;                                                        13P      7
510,63,1,1,27;                                                        15P      8
510,65,1,1,29;                                                        17P      9
508,4,0,69,1,0,0,0,69,2,1,0,0,69,3,0,0,0,69,4,0,0;                    19P     10
508,4,0,69,5,0,0,0,69,4,1,0,0,69,6,0,0,0,69,7,0,0;                    21P     11
508,4,0,69,8,0,0,0,69,7,1,0,0,69,9,0,0,0,69,10,0,0;                   23P     12
508,4,0,69,11,0,0,0,69,10,1,0,0,69,12,0,0,0,69,2,0,0;                 25P     13
508,4,0,69,11,1,0,0,69,1,1,0,0,69,5,1,0,0,69,8,1,0;                   27P     14
508,4,0,69,12,1,0,0,69,9,1,0,0,69,6,1,0,0,69,3,1,0;                   29P     15
126,1,1,0,0,1,0,0.,0.,4.,4.,1.,1.,30.,0.,0.,30.,0.,40.,0.,4.,0.,      31P     16
0.,0.;                                                                31P     17
126,1,1,0,0,1,0,0.,0.,6.,6.,1.,1.,30.,0.,0.,30.,60.,0.,0.,6.,0.,      33P     18
0.,0.;                                                                33P     19
126,1,1,0,0,1,0,-4.,-4.,0.,0.,1.,1.,30.,60.,40.,30.,60.,0.,-4.,       35P     20
0.,0.,0.,0.;                                                          35P     21
126,1,1,0,0,1,0,0.,0.,6.,6.,1.,1.,30.,0.,40.,30.,60.,40.,0.,6.,       37P     22
0.,0.,0.;                                                             37P     23
126,1,1,0,0,1,0,0.,0.,3.,3.,1.,1.,30.,0.,40.,                         39P     24
4.44089209850063D-015,0.,40.,0.,3.,0.,0.,0.;                          39P     25
126,1,1,0,0,1,0,-3.,-3.,0.,0.,1.,1.,4.44089209850063D-015,60.,        41P     26
40.,30.,60.,40.,-3.,0.,0.,0.,0.;                                      41P     27
126,1,1,0,0,1,0,0.,0.,6.,6.,1.,1.,4.44089209850062D-015,0.,40.,       43P     28
4.44089209850062D-015,60.,40.,0.,6.,0.,0.,0.;                         43P     29
126,1,1,0,0,1,0,0.,0.,4.,4.,1.,1.,4.44089209850062D-015,0.,40.,       45P     30
0.,0.,0.,0.,4.,0.,0.,0.;                                              45P     31
126,1,1,0,0,1,0,-4.,-4.,0.,0.,1.,1.,0.,60.,0.,                        47P     32
4.44089209850062D-015,60.,40.,-4.,0.,0.,0.,0.;                        47P     33
126,1,1,0,0,1,0,0.,0.,6.,6.,1.,1.,0.,0.,0.,0.,60.,0.,0.,6.,0.,        49P     34
0.,0.;                                                                49P     35
126,1,1,0,0,1,0,0.,0.,3.,3.,1.,1.,0.,0.,0.,30.,0.,0.,0.,3.,0.,        51P     36
0.,0.;                                                                51P     37
126,1,1,0,0,1,0,-3.,-3.,0.,0.,1.,1.,30.,60.,0.,0.,60.,0.,-3.,0.,      53P     38
0.,0.,0.;                                                             53P     39
128,1,1,1,1,0,0,1,0,0,0.,0.,4.,4.,0.,0.,6.,6.,1.,1.,1.,1.,30.,        55P     40
0.,40.,30.,0.,0.,30.,60.,40.,30.,60.,0.,0.,4.,0.,6.;                  55P     41
128,1,1,1,1,0,0,1,0,0,-1.97215226305253D-031,                         57P     42
-1.97215226305253D-031,3.,3.,0.,0.,6.,6.,1.,1.,1.,1.,                 57P     43
4.44089209850062D-015,0.,40.,30.,0.,40.,4.44089209850062D-015,        57P     44
60.,40.,30.,60.,40.,-1.97215226305253D-031,3.,0.,6.;                  57P     45
128,1,1,1,1,0,0,1,0,0,0.,0.,4.,4.,0.,0.,6.,6.,1.,1.,1.,1.,0.,0.,      59P     46
0.,4.44089209850062D-015,0.,40.,0.,60.,0.,4.44089209850062D-015,      59P     47
60.,40.,0.,4.,0.,6.;                                                  59P     48
128,1,1,1,1,0,0,1,0,0,0.,0.,3.,3.,0.,0.,6.,6.,1.,1.,1.,1.,30.,        61P     49
0.,0.,0.,0.,0.,30.,60.,0.,0.,60.,0.,0.,3.,0.,6.;                      61P     50
128,1,1,1,1,0,0,1,0,0,-2.,-2.,2.,2.,-1.5,-1.5,1.5,1.5,1.,1.,1.,       63P     51
1.,0.,0.,40.,0.,0.,0.,30.,0.,40.,30.,0.,0.,-2.,2.,-1.5,1.5;           63P     52
128,1,1,1,1,0,0,1,0,0,-2.,-2.,2.,2.,-1.5,-1.5,1.5,1.5,1.,1.,1.,       65P     53
1.,0.,60.,0.,0.,60.,40.,30.,60.,0.,30.,60.,40.,-2.,2.,-1.5,1.5;       65P     54
502,8,30.,0.,0.,30.,0.,40.,30.,60.,0.,30.,60.,40.,                    67P     55
4.44089209850062D-015,0.,40.,4.44089209850062D-015,60.,40.,0.,        67P     56
0.,0.,0.,60.,0.;                                                      67P     57
504,12,31,67,1,67,2,33,67,1,67,3,35,67,4,67,3,37,67,2,67,4,39,        69P     58
67,2,67,5,41,67,6,67,4,43,67,5,67,6,45,67,5,67,7,47,67,8,67,6,        69P     59
</code></pre>
<p>VG Nubivec <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2390465</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2390465</guid><dc:creator><![CDATA[Nubivec]]></dc:creator><pubDate>Sat, 22 Mar 2014 23:58:46 GMT</pubDate></item><item><title><![CDATA[Reply to Einzelne Zeilen ausgeben on Sun, 23 Mar 2014 12:30:09 GMT]]></title><description><![CDATA[<p>Lies dann die Datei am besten auch zeilenweise ein:</p>
<pre><code class="language-cpp">string zeile;
while(getline(in, zeile)
{
  if (zeile.find(suche, 0) != string::npos)
  {
    cout &lt;&lt; zeile;
  }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2390532</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2390532</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Sun, 23 Mar 2014 12:30:09 GMT</pubDate></item><item><title><![CDATA[Reply to Einzelne Zeilen ausgeben on Sun, 23 Mar 2014 18:05:51 GMT]]></title><description><![CDATA[<p>Weiters ist <code>find() != npos</code> kein passender Test.</p>
<p>Der würde auch bei z.B.</p>
<pre><code>0,510,0,0
</code></pre>
<p>oder</p>
<pre><code>1051000,0,0
</code></pre>
<p><code>true</code> ergeben - was aber vermutlich nicht erwünscht ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2390637</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2390637</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sun, 23 Mar 2014 18:05:51 GMT</pubDate></item><item><title><![CDATA[Reply to Einzelne Zeilen ausgeben on Sun, 23 Mar 2014 18:09:39 GMT]]></title><description><![CDATA[<p>Da der Wert ja immer am Anfang steht, könnte man bei find auf 0 prüfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2390639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2390639</guid><dc:creator><![CDATA[hhdfh]]></dc:creator><pubDate>Sun, 23 Mar 2014 18:09:39 GMT</pubDate></item><item><title><![CDATA[Reply to Einzelne Zeilen ausgeben on Sun, 23 Mar 2014 18:15:14 GMT]]></title><description><![CDATA[<p>Wenn man sich darauf verlassen kann, dass davor nicht irgendwelche Leerzeichen o.ä. stehen, dann wäre das schonmal ne Verbesserung.<br />
Wobei man dann immer noch false positives bei z.B.</p>
<pre><code>510123,0,0
</code></pre>
<p>hätte.</p>
<p>=&gt; Vielleicht eher <code>zeile.substr(0, 4) == &quot;510,&quot;</code></p>
<p>ps: Wobei das Float-Zahlen zu sein scheinen.<br />
Stellt sich die Frage: kann die Zeile statt mit &quot;510,&quot; auch mit &quot;510.0,&quot; anfangen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2390640</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2390640</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sun, 23 Mar 2014 18:15:14 GMT</pubDate></item><item><title><![CDATA[Reply to Einzelne Zeilen ausgeben on Sun, 23 Mar 2014 18:23:14 GMT]]></title><description><![CDATA[<p>Die &quot;saubere&quot; Variante wäre also, das erste &quot;,&quot; oder &quot;;&quot; zu finden, und den Teil davor als Float-Zahl zu parsen.<br />
Die so gewonnene Float-Zahl kann man dann mit 510 vergleichen.</p>
<p>Bzw. wenn einem der Vergleich einer Float-Zahl unheimlich ist, kann man sich den Substring zwischen Zeilenanfang und &quot;,&quot; bzw. &quot;;&quot; rausschneiden, und dann:</p>
<pre><code>* Alle Nullen vorne entfernen
* Gucken ob der String nen &quot;.&quot; enthält. Wenn ja:
    * Alle Nullen hinten entfernen
    * Wenn der String dann mit &quot;.&quot; endet auch den &quot;.&quot; entfernen
</code></pre>
<p>=&gt; Danach muss der String exakt &quot;510&quot; sein.</p>
<p>Dabei kann man dann auch - falls das Dateiformat das erlaubt - führende Leerzeichen/Tabs/... entfernen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2390644</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2390644</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Sun, 23 Mar 2014 18:23:14 GMT</pubDate></item><item><title><![CDATA[Reply to Einzelne Zeilen ausgeben on Mon, 24 Mar 2014 09:02:11 GMT]]></title><description><![CDATA[<p>das ist ein bisschen ein komisches Format.<br />
Soll z.B. &quot;-1.97215226305253D-031&quot; eine Zahl in Exponentialschreibweise sein? üblich wäre &quot;-1.97215226305253E-031&quot; - also mit 'E' oder 'e'</p>
<p>Kannst Du uns mehr über die Bedeutung des Inhalts der Datei sagen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2390719</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2390719</guid><dc:creator><![CDATA[Werner_logoff]]></dc:creator><pubDate>Mon, 24 Mar 2014 09:02:11 GMT</pubDate></item><item><title><![CDATA[Reply to Einzelne Zeilen ausgeben on Mon, 24 Mar 2014 09:18:56 GMT]]></title><description><![CDATA[<p>Das sieht nach <a href="http://en.wikipedia.org/wiki/IGES" rel="nofollow">IGES</a> aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2390723</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2390723</guid><dc:creator><![CDATA[DirkB]]></dc:creator><pubDate>Mon, 24 Mar 2014 09:18:56 GMT</pubDate></item><item><title><![CDATA[Reply to Einzelne Zeilen ausgeben on Mon, 24 Mar 2014 10:01:35 GMT]]></title><description><![CDATA[<p>Oh - tatsächlich. Nach Fortran hat das ja gleich gerochen. Und in Spalte 73 steht der Typ - hier 'P' für Parameterdata. Die Lochkarte lässt grüßen <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>
<p>Dann reicht es nicht(!) aus, nach einer &quot;510,..&quot; am Anfang der Zeile zu suchen. Denn es gibt auch mehrzeilige 'Formate' wie 126 oder 128 und dort könnte ja eine 510 als Parameter auftauchen und zufällig am Anfang der Zeile stehen.<br />
Folglich sollte zunächst die erste Zahl gelesen werden und anschließend alles bis zum nächsten ';' überlesen werden, falls es keine 510 ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2390729</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2390729</guid><dc:creator><![CDATA[Werner_logoff]]></dc:creator><pubDate>Mon, 24 Mar 2014 10:01:35 GMT</pubDate></item></channel></rss>