<?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[MFC erzeugt nicht vorhandenen &amp;quot;0000&amp;quot;-String beim Listbox befüllen]]></title><description><![CDATA[<p>Dies ist der MFC-Teil in OnInitDialog. Die Daten werden mit getline aus einer teilweise text-Datei (unterschiedlich delimited) ausgelesen und anschließend das vierstellige Jahr ausgegeben. MFC erzeugt beim füllen der Listbox für das Jahr 5 Einträge, und vier sollten es sein. Eine undefinierte Stringfolge (&quot;0000&quot;) wird erzeugt. Die Textdatei enthält kein Jahr mit &quot;0000&quot;</p>
<p>Hier der Codeausschnitt aus der OnInitDialog:</p>
<pre><code class="language-cpp">[code]BOOL CRechnungenWinDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Symbol für dieses Dialogfeld festlegen. Wird automatisch erledigt
	//  wenn das Hauptfenster der Anwendung kein Dialogfeld ist
	SetIcon(m_hIcon, TRUE);			// Großes Symbol verwenden
	SetIcon(m_hIcon, FALSE);		// Kleines Symbol verwenden

	// ZU ERLEDIGEN: Hier zusätzliche Initialisierung einfügen
	char Zeile [500+1];
	ifstream datei;
	datei.open (&quot;Rechnungen.txt&quot;, ios::nocreate | ios::in);
	if (datei.fail())
			AfxMessageBox(&quot;Fehler beim öffnen der Datei!&quot;);
	else
	{
		while (! datei.eof())
		{
			datei.getline(Zeile, 500, ';'); // Rechnungsnummer auslesen
			Ausgangsrechnungen.RechNr = atoi(Zeile);

			datei.getline(Zeile, 500, '-'); // Jahr von Datum auslesen
			Ausgangsrechnungen.RechDatum.SetJahr(atoi(Zeile));

			datei.getline(Zeile, 500, '-'); // Monat von Datum auslesen
			Ausgangsrechnungen.RechDatum.SetMonat(atoi(Zeile));

			datei.getline(Zeile, 500, ';'); // Tag von Datum einlesen
			Ausgangsrechnungen.RechDatum.SetTag(atoi(Zeile));

			datei.getline(Zeile, 500, ';'); // Kunde auslesen
			Ausgangsrechnungen.Kunde = Zeile;

			datei.getline(Zeile, 500, '\n'); // Rechnungsbetrag auslesen
			Ausgangsrechnungen.Rechbetrag = atof(Zeile);

			char str_jahr [4+1];
			Ausgangsrechnungen.RechDatum.FormatDatum(&quot;%Y&quot;, str_jahr);
			if (m_Jahr.FindString(-1, str_jahr) == LB_ERR)
				m_Jahr.AddString(str_jahr);
		}

	}

	datei.close();

	return TRUE;  // Geben Sie TRUE zurück, außer ein Steuerelement soll den Fokus erhalten
}[/code]
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/141448/mfc-erzeugt-nicht-vorhandenen-quot-0000-quot-string-beim-listbox-befüllen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 14 Jul 2026 08:41:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/141448.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 22 Mar 2006 08:24:23 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to MFC erzeugt nicht vorhandenen &amp;quot;0000&amp;quot;-String beim Listbox befüllen on Wed, 22 Mar 2006 08:24:23 GMT]]></title><description><![CDATA[<p>Dies ist der MFC-Teil in OnInitDialog. Die Daten werden mit getline aus einer teilweise text-Datei (unterschiedlich delimited) ausgelesen und anschließend das vierstellige Jahr ausgegeben. MFC erzeugt beim füllen der Listbox für das Jahr 5 Einträge, und vier sollten es sein. Eine undefinierte Stringfolge (&quot;0000&quot;) wird erzeugt. Die Textdatei enthält kein Jahr mit &quot;0000&quot;</p>
<p>Hier der Codeausschnitt aus der OnInitDialog:</p>
<pre><code class="language-cpp">[code]BOOL CRechnungenWinDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Symbol für dieses Dialogfeld festlegen. Wird automatisch erledigt
	//  wenn das Hauptfenster der Anwendung kein Dialogfeld ist
	SetIcon(m_hIcon, TRUE);			// Großes Symbol verwenden
	SetIcon(m_hIcon, FALSE);		// Kleines Symbol verwenden

	// ZU ERLEDIGEN: Hier zusätzliche Initialisierung einfügen
	char Zeile [500+1];
	ifstream datei;
	datei.open (&quot;Rechnungen.txt&quot;, ios::nocreate | ios::in);
	if (datei.fail())
			AfxMessageBox(&quot;Fehler beim öffnen der Datei!&quot;);
	else
	{
		while (! datei.eof())
		{
			datei.getline(Zeile, 500, ';'); // Rechnungsnummer auslesen
			Ausgangsrechnungen.RechNr = atoi(Zeile);

			datei.getline(Zeile, 500, '-'); // Jahr von Datum auslesen
			Ausgangsrechnungen.RechDatum.SetJahr(atoi(Zeile));

			datei.getline(Zeile, 500, '-'); // Monat von Datum auslesen
			Ausgangsrechnungen.RechDatum.SetMonat(atoi(Zeile));

			datei.getline(Zeile, 500, ';'); // Tag von Datum einlesen
			Ausgangsrechnungen.RechDatum.SetTag(atoi(Zeile));

			datei.getline(Zeile, 500, ';'); // Kunde auslesen
			Ausgangsrechnungen.Kunde = Zeile;

			datei.getline(Zeile, 500, '\n'); // Rechnungsbetrag auslesen
			Ausgangsrechnungen.Rechbetrag = atof(Zeile);

			char str_jahr [4+1];
			Ausgangsrechnungen.RechDatum.FormatDatum(&quot;%Y&quot;, str_jahr);
			if (m_Jahr.FindString(-1, str_jahr) == LB_ERR)
				m_Jahr.AddString(str_jahr);
		}

	}

	datei.close();

	return TRUE;  // Geben Sie TRUE zurück, außer ein Steuerelement soll den Fokus erhalten
}[/code]
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1021493</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1021493</guid><dc:creator><![CDATA[Alex747]]></dc:creator><pubDate>Wed, 22 Mar 2006 08:24:23 GMT</pubDate></item><item><title><![CDATA[Reply to MFC erzeugt nicht vorhandenen &amp;quot;0000&amp;quot;-String beim Listbox befüllen on Wed, 22 Mar 2006 08:33:52 GMT]]></title><description><![CDATA[<p>Das liegt daran, dass deine Schleife falsch aufgebaut ist. eof liefert erst dann true, wenn getline schon einmal fehlgeschlagen ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1021501</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1021501</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Wed, 22 Mar 2006 08:33:52 GMT</pubDate></item></channel></rss>