<?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[fin.open funzt nicht]]></title><description><![CDATA[<p>hallo Community,<br />
hab ein Problem. Ich schaff es nicht eine erstellt Textdatei zu schliessen und nachher wieder zu öffnen. Möglicherweise wird sie auch geöffnet und der Zeiger steht ganz am ende. So genau weiß ich das leider noch nicht zu beurteilen. Der Code sieht so aus:</p>
<pre><code class="language-cpp">#include&lt;iostream&gt;
#include&lt;fstream&gt;
using namespace std;

int main()
{
	char fileName[80];
	char buffer[255];
	cout &lt;&lt; &quot;Bitte Dateiname eingeben: &quot;;
	cin &gt;&gt; fileName;

	ifstream fin(fileName);
	if (fin) {
		cout &lt;&lt; &quot;Aktueller Dateiinhalt: \n&quot;;
		char ch;
		while (fin.get(ch)) {
			cout &lt;&lt; ch;
		}
		cout &lt;&lt; &quot;\n***Ende des Dateiinhalts***\n&quot;;
	}
	fin.close();

	fin.open(fileName);
	if (!fin) {
		cout &lt;&lt; &quot;Es ist nicht möglich &quot; &lt;&lt; fileName &lt;&lt; &quot; zum Lesen zu öffnen&quot; &lt;&lt; endl;
		return (1);
	}

	cout &lt;&lt; &quot;\nSo lautet der Inhalt der Datei: &quot; &lt;&lt; endl;
	char ch;
	while (fin.get(ch));
		cout &lt;&lt; ch;
	cout &lt;&lt; &quot;\n***Ende des Dateiinhalts***\n&quot;;
	fin.close();

	return 0;
}
</code></pre>
<p>die fin.open-Funktion läuft einfach nicht. Es erscheint dann immer &quot;Es ist nicht möglich &lt;filename&gt; zum Lesen zu öffnen&quot;<br />
ich benutze übrigens den g++ Compiler. Beim kompilieren selbst gibts keine Fehlermeldungen. Ich hoffe ihr könnt mir helfen</p>
<p>mfg Phil</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/130637/fin-open-funzt-nicht</link><generator>RSS for Node</generator><lastBuildDate>Wed, 26 Aug 2026 16:15:42 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/130637.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 25 Dec 2005 18:08:37 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to fin.open funzt nicht on Sun, 25 Dec 2005 18:09:25 GMT]]></title><description><![CDATA[<p>hallo Community,<br />
hab ein Problem. Ich schaff es nicht eine erstellt Textdatei zu schliessen und nachher wieder zu öffnen. Möglicherweise wird sie auch geöffnet und der Zeiger steht ganz am ende. So genau weiß ich das leider noch nicht zu beurteilen. Der Code sieht so aus:</p>
<pre><code class="language-cpp">#include&lt;iostream&gt;
#include&lt;fstream&gt;
using namespace std;

int main()
{
	char fileName[80];
	char buffer[255];
	cout &lt;&lt; &quot;Bitte Dateiname eingeben: &quot;;
	cin &gt;&gt; fileName;

	ifstream fin(fileName);
	if (fin) {
		cout &lt;&lt; &quot;Aktueller Dateiinhalt: \n&quot;;
		char ch;
		while (fin.get(ch)) {
			cout &lt;&lt; ch;
		}
		cout &lt;&lt; &quot;\n***Ende des Dateiinhalts***\n&quot;;
	}
	fin.close();

	fin.open(fileName);
	if (!fin) {
		cout &lt;&lt; &quot;Es ist nicht möglich &quot; &lt;&lt; fileName &lt;&lt; &quot; zum Lesen zu öffnen&quot; &lt;&lt; endl;
		return (1);
	}

	cout &lt;&lt; &quot;\nSo lautet der Inhalt der Datei: &quot; &lt;&lt; endl;
	char ch;
	while (fin.get(ch));
		cout &lt;&lt; ch;
	cout &lt;&lt; &quot;\n***Ende des Dateiinhalts***\n&quot;;
	fin.close();

	return 0;
}
</code></pre>
<p>die fin.open-Funktion läuft einfach nicht. Es erscheint dann immer &quot;Es ist nicht möglich &lt;filename&gt; zum Lesen zu öffnen&quot;<br />
ich benutze übrigens den g++ Compiler. Beim kompilieren selbst gibts keine Fehlermeldungen. Ich hoffe ihr könnt mir helfen</p>
<p>mfg Phil</p>
]]></description><link>https://www.c-plusplus.net/forum/post/949708</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/949708</guid><dc:creator><![CDATA[Schnuffi88]]></dc:creator><pubDate>Sun, 25 Dec 2005 18:09:25 GMT</pubDate></item><item><title><![CDATA[Reply to fin.open funzt nicht on Sun, 25 Dec 2005 21:07:37 GMT]]></title><description><![CDATA[<p>Wenn du beim ersten Lesen auf EOF stösst dann wird ausserdem auch das failbit<br />
gesetzt. Durch das close() wird der Fehlerstatus NICHT bereinigt. Wenn du dann<br />
anschliessend das Ergebnis von open() prüfst stösst du wieder auf diesen &quot;alten&quot;<br />
Fehler.<br />
Um das zu verhindern kannst du beispielswiese vor dem open() die Funktion clear()<br />
aufrufen um den Fehlerstatus zu löschen und schon gehts. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/949831</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/949831</guid><dc:creator><![CDATA[Chew-Z]]></dc:creator><pubDate>Sun, 25 Dec 2005 21:07:37 GMT</pubDate></item><item><title><![CDATA[Reply to fin.open funzt nicht on Sun, 25 Dec 2005 22:06:41 GMT]]></title><description><![CDATA[<p>danke für die schnelle Antwort. Also das Öffnen mit fin.open() geht jetzt. Allerdings scheint der zeiger trotzdem noch am ende der Datei festzuhängen. Er liest nämlich nix aus sonder öffnet und schliesst nur. Kann ich irgendwie öffnen und ihn dabei an den Anfang springen lassen? z.B. fin.open(fileName,ios::zum_Anfang_springen) ? Oder kann man die Zeigerposition irgendwie löschen?</p>
<p>edit: ok, Kommando zurück! Das clear() ist scheinbar notwendig. Hatte aber noch nen bescheuerten Fehler drin. hatte ein Smikolen am ende der while-Anweisung. Jetzt geht alles!!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/949841</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/949841</guid><dc:creator><![CDATA[Schnuffi88]]></dc:creator><pubDate>Sun, 25 Dec 2005 22:06:41 GMT</pubDate></item></channel></rss>