<?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[Leerzeichen mit fscanf einlesen]]></title><description><![CDATA[<p>Hi, ich habe eine Datei, in der folgendes steht (und zwar genau folgendes!):<br />
Text 1\nText 2\nText3\n<br />
Jetzt habe ich diese Datei geöffnet (fopen) und möchte jetzt jede Zeile der Datei in einem Char-Array speichern (Test! Kein tieferer Sinn!). Das mache ich folgendermaßen:</p>
<pre><code class="language-cpp">char text[10];

(...)

fscanf(pDatei, &quot;%s&quot;, text);
</code></pre>
<p>Jetzt ließt ja fscanf nur bis zum Leerzeichen, d.h. ich bekomme erst &quot;Text&quot;, dann &quot;1&quot;, dann wieder &quot;Text&quot;, dann &quot;2&quot; usw. Ich möchte aber die ganze Zeile auf einmal bekommen, ohne dass ich vorher weiß, wie viele Leerzeichen eine Zeile beinhaltet.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/155835/leerzeichen-mit-fscanf-einlesen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 08 Sep 2026 16:30:02 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/155835.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 10 Aug 2006 07:32:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 07:32:57 GMT]]></title><description><![CDATA[<p>Hi, ich habe eine Datei, in der folgendes steht (und zwar genau folgendes!):<br />
Text 1\nText 2\nText3\n<br />
Jetzt habe ich diese Datei geöffnet (fopen) und möchte jetzt jede Zeile der Datei in einem Char-Array speichern (Test! Kein tieferer Sinn!). Das mache ich folgendermaßen:</p>
<pre><code class="language-cpp">char text[10];

(...)

fscanf(pDatei, &quot;%s&quot;, text);
</code></pre>
<p>Jetzt ließt ja fscanf nur bis zum Leerzeichen, d.h. ich bekomme erst &quot;Text&quot;, dann &quot;1&quot;, dann wieder &quot;Text&quot;, dann &quot;2&quot; usw. Ich möchte aber die ganze Zeile auf einmal bekommen, ohne dass ich vorher weiß, wie viele Leerzeichen eine Zeile beinhaltet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1114267</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114267</guid><dc:creator><![CDATA[heimchen]]></dc:creator><pubDate>Thu, 10 Aug 2006 07:32:57 GMT</pubDate></item><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 07:45:59 GMT]]></title><description><![CDATA[<p>Hi!</p>
<p>Verwende <em>getline</em> und Streams!</p>
<p>grüße</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1114275</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114275</guid><dc:creator><![CDATA[David_pb]]></dc:creator><pubDate>Thu, 10 Aug 2006 07:45:59 GMT</pubDate></item><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 07:53:04 GMT]]></title><description><![CDATA[<p>Also den Stream bekomme ich ja mit fopen zurück, aber getline hab ich grad nicht gefunden. Wie verwende ich das denn? Arbeite mit Borland.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1114279</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114279</guid><dc:creator><![CDATA[heimchen]]></dc:creator><pubDate>Thu, 10 Aug 2006 07:53:04 GMT</pubDate></item><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 07:55:06 GMT]]></title><description><![CDATA[<p>Was er mit streams meinte ist eher das hier<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39469.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-39469.html</a><br />
und so einen Stream bekommst du nicht von fopen zurück.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1114281</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114281</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Thu, 10 Aug 2006 07:55:06 GMT</pubDate></item><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 07:59:02 GMT]]></title><description><![CDATA[<p>Gehe ich recht in der Annahme, dass es sich dann auf meine Art nicht so einfach lösen lässt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1114285</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114285</guid><dc:creator><![CDATA[heimchen]]></dc:creator><pubDate>Thu, 10 Aug 2006 07:59:02 GMT</pubDate></item><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 08:00:54 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>das läßt sich sicher lösen, nur fragts du das i m falschen Forum.<br />
Also las dich entweder ins Ansi-C Forum verschieben oder stell dein Programm auf C++ um.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1114289</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114289</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 10 Aug 2006 08:00:54 GMT</pubDate></item><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 08:01:43 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>geht das nicht auch irgendwie mit:</p>
<pre><code class="language-cpp">fscanf(pDatei, &quot;%[^\n]s&quot;, text);
</code></pre>
<p>Kanns gerade leider net ausprobieren, weil ich kein Compiler hier habe, aber beim einlesen mit scanf(...); ging es mit [^\n] irgendwie. Aber ne andere Funktion waere vermutlich besser/eleganter <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /></p>
<p>MfG, Heimdall83</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1114290</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114290</guid><dc:creator><![CDATA[Heimdall83]]></dc:creator><pubDate>Thu, 10 Aug 2006 08:01:43 GMT</pubDate></item><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 08:04:49 GMT]]></title><description><![CDATA[<p>Erstens: Ja, das sollte funktionieren (alle Funktionen der scanf()-Familie verwenden die selben Formatkennungen).</p>
<p>Zweitens: fopen() und fscanf() sind C-Funktionen und unter C++ nicht mehr üblich. &quot;Wir&quot; verwenden lieber <a href="http://c-plusplus.net/forum/viewtopic-var-t-is-152915.html" rel="nofollow">IO-Streams</a>.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1114294</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114294</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 10 Aug 2006 08:04:49 GMT</pubDate></item><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 08:38:06 GMT]]></title><description><![CDATA[<p>Also, mit fscanf(pDatei, %[^\n]s&quot;, text) lese ich leider nur die erste Zeile ein (das ganze läuft in einer while-Schleife.<br />
Also habe ich mich mal an die Streams gemacht:</p>
<pre><code class="language-cpp">(...)
#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;iterator&gt;
#include &lt;string&gt;

ifstream FileIn(&quot;texte.txt&quot;);
if(FileIn)
{
  for(string ReadString; getline(FileIn, ReadString););
}
</code></pre>
<p>Jetzt bekomme ich aber die Meldung, dass ifstream, string und getline unbekannt sind.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1114323</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114323</guid><dc:creator><![CDATA[heimchen]]></dc:creator><pubDate>Thu, 10 Aug 2006 08:38:06 GMT</pubDate></item><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 08:45:59 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>dann lies doch die Beispiele nochmal genau durch</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;iterator&gt;
#include &lt;string&gt;
using namespace std;
...
</code></pre>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1114326</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114326</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 10 Aug 2006 08:45:59 GMT</pubDate></item><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 08:45:42 GMT]]></title><description><![CDATA[<p>heimchen schrieb:</p>
<blockquote>
<p>Also, mit fscanf(pDatei, %[^\n]s&quot;, text) lese ich leider nur die erste Zeile ein (das ganze läuft in einer while-Schleife).</p>
</blockquote>
<p>Ja, scanf() lässt das erste Zeichen im Eingabepuffer stehen, daß nicht &quot;passt&quot;, in deinem Fall das Newline - damit erhältst du im nächsten Durchlauf eine leere Eingabezeile (das Newline steht immer noch da und markiert das Ende der Eingabe). Um weiterarbeiten zu können, müßtest du das Newline per fgetc() entsorgen.</p>
<p>(ein weiterer Vorteil von getline() - der liest das abschließende Zeilenende automatisch mit und entsorgt es)</p>
<blockquote>
<p>Jetzt bekomme ich aber die Meldung, dass ifstream, string und getline unbekannt sind.</p>
</blockquote>
<p>versuch's mal, indem du überall ein &quot;std::&quot; davorsetzt.</p>
<p>(alternativ reicht auch ein &quot;using namespace std;&quot; nach den #include's)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1114327</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114327</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 10 Aug 2006 08:45:42 GMT</pubDate></item><item><title><![CDATA[Reply to Leerzeichen mit fscanf einlesen on Thu, 10 Aug 2006 09:12:00 GMT]]></title><description><![CDATA[<p>Oh, hab ich doch glatt überlesen. Danke <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1114356</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1114356</guid><dc:creator><![CDATA[heimchen]]></dc:creator><pubDate>Thu, 10 Aug 2006 09:12:00 GMT</pubDate></item></channel></rss>