<?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[Datei einlesen -&amp;gt; gehts auch einfacher?]]></title><description><![CDATA[<p>Hallo ich wollte mal fragen, obs meine Möglichkeit eine Datei einzulesen auch in &quot;einfach&quot; gibt <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 />
Das Programm soll Daten aus folgender Struktur zuordnen:</p>
<pre><code>Name;PIN#Kontostand
</code></pre>
<pre><code class="language-cpp">data_in.open(&quot;data.db&quot;);
	if(!data_in.is_open()) {
		std::cout &lt;&lt; &quot;Datei konnte nicht geoeffnet werden!&quot;;
		std::cin.get();
		exit(0);
	}

	//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	// =[Einlese-Schleife]=
	//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	// 1. Information -&gt; Name |#| 2. Information -&gt; PIN |#| 3. Information -&gt; Kontostand
	//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

	for(int i = 0; i &lt; number_user; i++) {
		while(data_in.get(read_letter)) {
			if(read_letter == ';') {
				while(data_in.get(read_letter)) {
					if(read_letter == '#') {
						while(data_in.get(read_letter)) {
							if(read_letter == '\n') {
								break;
							}
							money_buffer += read_letter;
						}
						break;
					}
					pin_buffer += read_letter;
				}
				break;
			}
			name_buffer += read_letter;
		}
		money_buffer_ld = convert_str&lt; long double &gt;(money_buffer);
		user_names.push_back(name_buffer);
		user_pins.push_back(pin_buffer);
		user_money.push_back(money_buffer_ld);
		name_buffer.clear();
		pin_buffer.clear();
		money_buffer.clear();
	}

	data_in.close();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/296858/datei-einlesen-gt-gehts-auch-einfacher</link><generator>RSS for Node</generator><lastBuildDate>Fri, 14 Aug 2026 17:07:53 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/296858.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 13 Dec 2011 21:11:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Datei einlesen -&amp;gt; gehts auch einfacher? on Tue, 13 Dec 2011 21:11:02 GMT]]></title><description><![CDATA[<p>Hallo ich wollte mal fragen, obs meine Möglichkeit eine Datei einzulesen auch in &quot;einfach&quot; gibt <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 />
Das Programm soll Daten aus folgender Struktur zuordnen:</p>
<pre><code>Name;PIN#Kontostand
</code></pre>
<pre><code class="language-cpp">data_in.open(&quot;data.db&quot;);
	if(!data_in.is_open()) {
		std::cout &lt;&lt; &quot;Datei konnte nicht geoeffnet werden!&quot;;
		std::cin.get();
		exit(0);
	}

	//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	// =[Einlese-Schleife]=
	//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	// 1. Information -&gt; Name |#| 2. Information -&gt; PIN |#| 3. Information -&gt; Kontostand
	//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

	for(int i = 0; i &lt; number_user; i++) {
		while(data_in.get(read_letter)) {
			if(read_letter == ';') {
				while(data_in.get(read_letter)) {
					if(read_letter == '#') {
						while(data_in.get(read_letter)) {
							if(read_letter == '\n') {
								break;
							}
							money_buffer += read_letter;
						}
						break;
					}
					pin_buffer += read_letter;
				}
				break;
			}
			name_buffer += read_letter;
		}
		money_buffer_ld = convert_str&lt; long double &gt;(money_buffer);
		user_names.push_back(name_buffer);
		user_pins.push_back(pin_buffer);
		user_money.push_back(money_buffer_ld);
		name_buffer.clear();
		pin_buffer.clear();
		money_buffer.clear();
	}

	data_in.close();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2156676</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2156676</guid><dc:creator><![CDATA[Feuerkelch]]></dc:creator><pubDate>Tue, 13 Dec 2011 21:11:02 GMT</pubDate></item><item><title><![CDATA[Reply to Datei einlesen -&amp;gt; gehts auch einfacher? on Tue, 13 Dec 2011 21:44:29 GMT]]></title><description><![CDATA[<p>Ja, das heißt<a href="http://cplusplus.com/reference/string/getline/" rel="nofollow"> <code>std::getline</code> </a>.<br />
Und <code>exit</code> ist Mist, wenn man nicht aufräumt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2156694</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2156694</guid><dc:creator><![CDATA[TyRoXx]]></dc:creator><pubDate>Tue, 13 Dec 2011 21:44:29 GMT</pubDate></item><item><title><![CDATA[Reply to Datei einlesen -&amp;gt; gehts auch einfacher? on Tue, 13 Dec 2011 21:51:30 GMT]]></title><description><![CDATA[<p><a href="http://ideone.com/98FZ6" rel="nofollow">Mein Vorschlag</a></p>
<p>Ginge natürlich noch besser mit Boost ;p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2156696</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2156696</guid><dc:creator><![CDATA[Wurstinator]]></dc:creator><pubDate>Tue, 13 Dec 2011 21:51:30 GMT</pubDate></item><item><title><![CDATA[Reply to Datei einlesen -&amp;gt; gehts auch einfacher? on Tue, 13 Dec 2011 22:03:09 GMT]]></title><description><![CDATA[<p>Feuerkelch schrieb:</p>
<blockquote>
<p>Hallo ich wollte mal fragen, obs meine Möglichkeit eine Datei einzulesen auch in &quot;einfach&quot; gibt <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>
</blockquote>
<p>Ja es gibt eine Möglichkeit.<br />
Liegt folgende Datei vor:</p>
<pre><code>Feuerkelch;A1234#34.50
Benno;5634B#-134.70
Susi;CB6CB7#3338.20
</code></pre>
<p>dann liefert dieser Code:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;

struct UserInfo
{
    std::string m_name;
    std::string m_pin;
    double m_kontostand;
    friend std::istream&amp; operator&gt;&gt;( std::istream&amp; in, UserInfo&amp; ui );
};
std::istream&amp; operator&gt;&gt;( std::istream&amp; in, UserInfo&amp; ui )
{
    getline( in &gt;&gt; std::ws, ui.m_name, ';' );
    getline( in, ui.m_pin, '#' );
    in &gt;&gt; ui.m_kontostand;
    return in;
}

int main()
{
    using namespace std;
    vector&lt; UserInfo &gt; user_infos;
    // ifstream data_in(&quot;data.db&quot;);
    ifstream data_in(&quot;datei.txt&quot;);
    if( !data_in.is_open() )
    {
        cerr &lt;&lt; &quot;Fehler beim Oeffnen der Datei&quot; &lt;&lt; endl;
        return -1;
    }
    for( UserInfo x; data_in &gt;&gt; x; )
        user_infos.push_back( x );
    cout &lt;&lt; user_infos.size() &lt;&lt; &quot; Eintraege gelesen&quot; &lt;&lt; endl;
    if( data_in.eof() )
        cout &lt;&lt; &quot;Dateiende erreicht&quot; &lt;&lt; endl;

    cin.get();
    return 0;
}
</code></pre>
<p>diese Ausgabe</p>
<pre><code>3 Eintraege gelesen
Dateiende erreicht
</code></pre>
<p>:xmas2: Werner</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2156698</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2156698</guid><dc:creator><![CDATA[Werner Salomon]]></dc:creator><pubDate>Tue, 13 Dec 2011 22:03:09 GMT</pubDate></item><item><title><![CDATA[Reply to Datei einlesen -&amp;gt; gehts auch einfacher? on Tue, 13 Dec 2011 22:11:51 GMT]]></title><description><![CDATA[<p>Feuerkelch schrieb:</p>
<blockquote>
<pre><code class="language-cpp">money_buffer_ld = convert_str&lt; long double &gt;(money_buffer);
</code></pre>
</blockquote>
<p>Geld als double?!?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2156699</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2156699</guid><dc:creator><![CDATA[duplusmonarius]]></dc:creator><pubDate>Tue, 13 Dec 2011 22:11:51 GMT</pubDate></item></channel></rss>