<?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[Wie aus basic_ifstream lesen?]]></title><description><![CDATA[<p>Hi,</p>
<p>wie kann ich aus einem basic_ifstream&lt;CharT&gt; mit CharT als beliebigen character type einen CharT auslesen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/118206/wie-aus-basic_ifstream-lesen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 21 Aug 2026 08:16:51 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/118206.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 16 Aug 2005 10:00:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wie aus basic_ifstream lesen? on Tue, 16 Aug 2005 10:00:33 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>wie kann ich aus einem basic_ifstream&lt;CharT&gt; mit CharT als beliebigen character type einen CharT auslesen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/853181</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/853181</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Tue, 16 Aug 2005 10:00:33 GMT</pubDate></item><item><title><![CDATA[Reply to Wie aus basic_ifstream lesen? on Tue, 16 Aug 2005 10:09:35 GMT]]></title><description><![CDATA[<p>mit get, wie gehabt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/853189</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/853189</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Tue, 16 Aug 2005 10:09:35 GMT</pubDate></item><item><title><![CDATA[Reply to Wie aus basic_ifstream lesen? on Tue, 16 Aug 2005 10:10:28 GMT]]></title><description><![CDATA[<p>bist du der echte Michael E.??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/853191</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/853191</guid><dc:creator><![CDATA[fake?]]></dc:creator><pubDate>Tue, 16 Aug 2005 10:10:28 GMT</pubDate></item><item><title><![CDATA[Reply to Wie aus basic_ifstream lesen? on Tue, 16 Aug 2005 10:44:53 GMT]]></title><description><![CDATA[<p>Bashar: Was macht man, wenn sizeof(CharT) größer ist als sizeof(int)? [EDIT] istream&amp; get (char&amp; c ); benutzen.</p>
<p>Außerdem will get() bei mir nicht so richtig:</p>
<pre><code class="language-cpp">#include &lt;fstream&gt;
#include &lt;iostream&gt;

template &lt; typename CharT &gt;
class Huffman
{
public:
	typedef CharT char_type;

	explicit Huffman(const char *fileName)
	{
		std::basic_ifstream&lt;CharT&gt; in(fileName);

		while(in)
		{
			CharT buffer;
			buffer = static_cast&lt;CharT&gt;(in.get());
        		data_.push_back(buffer);

        		if((in.rdstate() &amp; std::basic_ifstream&lt;CharT&gt;::badbit) != 0)
        		   	std::cout &lt;&lt; &quot;badbit&quot; &lt;&lt; std::endl;
        		if((in.rdstate() &amp; std::basic_ifstream&lt;CharT&gt;::failbit) != 0)
        	    		std::cout &lt;&lt; &quot;failbit&quot; &lt;&lt; std::endl;
        		if((in.rdstate() &amp; std::basic_ifstream&lt;CharT&gt;::eofbit) != 0)
        	    		std::cout &lt;&lt; &quot;eofbit&quot; &lt;&lt; std::endl;
        		if((in.rdstate() &amp; std::basic_ifstream&lt;CharT&gt;::goodbit) != 0)
        	    		std::cout &lt;&lt; &quot;goodbit&quot; &lt;&lt; std::endl;
		}

		// ...
	}

	// ...
};

Huffman&lt;wchar_t&gt; h(&quot;test&quot;);
</code></pre>
<p>Die Datei test hat denselben Inhalt wie huffman.h, fängt also mit &quot;#ifndef MICHAEL_E_COMPRESSION_HUFFMAN_H&quot; an. Ausgabe ist folgende:</p>
<pre><code>badbit
failbit
</code></pre>
<p>Durch den Debugger habe ich erfahren, dass in.get() den Wert 65535 zurückliefert. Was läuft hier falsch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/853209</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/853209</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Tue, 16 Aug 2005 10:44:53 GMT</pubDate></item><item><title><![CDATA[Reply to Wie aus basic_ifstream lesen? on Tue, 16 Aug 2005 10:45:25 GMT]]></title><description><![CDATA[<p>Michael E. schrieb:</p>
<blockquote>
<p>Bashar: Was macht man, wenn sizeof(CharT) größer ist als sizeof(int)?</p>
</blockquote>
<p>Man benutzt</p>
<pre><code class="language-cpp">in.get(buffer);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/853214</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/853214</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Tue, 16 Aug 2005 10:45:25 GMT</pubDate></item><item><title><![CDATA[Reply to Wie aus basic_ifstream lesen? on Tue, 16 Aug 2005 11:02:35 GMT]]></title><description><![CDATA[<p>Bei mir läuft dein code einwandfrei.<br />
Wenn dich die Ausgabe badbit failbit stört die kommt bei eof.<br />
Kurt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/853228</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/853228</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Tue, 16 Aug 2005 11:02:35 GMT</pubDate></item><item><title><![CDATA[Reply to Wie aus basic_ifstream lesen? on Tue, 16 Aug 2005 11:11:07 GMT]]></title><description><![CDATA[<p>ZuK: Bei mir läufts leider nicht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> Ich benutze Code::Blocks mit gcc 3.4.4 unter der Haube.</p>
<p>badbit und failbit kommen bei mir schon beim ersten Schleifendurchlauf, hat also nix mit eof zu tun.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/853233</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/853233</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Tue, 16 Aug 2005 11:11:07 GMT</pubDate></item><item><title><![CDATA[Reply to Wie aus basic_ifstream lesen? on Tue, 16 Aug 2005 11:23:53 GMT]]></title><description><![CDATA[<p>Wenn ich in.get(buffer) benutze, kommt beim ersten Schleifendurchlauf wieder badbit und failbit, allerdings steht dann in buffer der Wert 68 (EDIT: jetzt 61).</p>
<p>BTW: Die Datei &quot;test&quot; wurde als 8bit abgespeichert. Dann müsste der erste Wert eigentlich 9065 sein.</p>
<p>[EDIT] Wenn ich als Unicode/UTF-8 abspeicher, kommt dasselbe Ergebnis.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/853243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/853243</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Tue, 16 Aug 2005 11:23:53 GMT</pubDate></item><item><title><![CDATA[Reply to Wie aus basic_ifstream lesen? on Tue, 16 Aug 2005 11:33:00 GMT]]></title><description><![CDATA[<p>Habs jetzt nochmal getestet. Mit VC6 funktioniert es einwandfrei.<br />
Mit g++ ( 3.3.3 Cygwin ) compilierts nur mit Huffman&lt;char&gt; h(&quot;test&quot;) und dann funktioniert es. ( wahrscheinlich fehlt mir irgend ein header )<br />
Kurt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/853265</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/853265</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Tue, 16 Aug 2005 11:33:00 GMT</pubDate></item><item><title><![CDATA[Reply to Wie aus basic_ifstream lesen? on Tue, 16 Aug 2005 11:47:18 GMT]]></title><description><![CDATA[<p>Michael E. schrieb:</p>
<blockquote>
<p>Bashar: Was macht man, wenn sizeof(CharT) größer ist als sizeof(int)? [EDIT] istream&amp; get (char&amp; c ); benutzen.</p>
</blockquote>
<p>Guck dir mal die Definition von basic_istream::get an, da gibts kein int. get hat den Rückgabewert int_type, was wiederum ein typedef auf den Member int_type des entsprechenden char_traits&lt;charT&gt; ist.</p>
<p>Wenn du ungewöhnliche Typen für charT einsetzen willst, wirst du dir eine eigene char_traits-Spezialisierung schreiben müssen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/853284</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/853284</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Tue, 16 Aug 2005 11:47:18 GMT</pubDate></item><item><title><![CDATA[Reply to Wie aus basic_ifstream lesen? on Tue, 16 Aug 2005 12:04:32 GMT]]></title><description><![CDATA[<p>Bashar: Danke für den Hinweis. Hab in der Hilfe von istream geguckt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>Mein Problem besteht leider immer noch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/853311</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/853311</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Tue, 16 Aug 2005 12:04:32 GMT</pubDate></item></channel></rss>