<?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[Ordner durchsuchen und .jpg Groesse feststellen]]></title><description><![CDATA[<p>Hallo liebe CPPler!</p>
<p>Ich bin gerade dabei ein Programm zu schreiben, das einen Ordner nach allen .jpg absuchen soll (da ich die Namen der .jpg's nicht weiß) und danach die Größe von allen .jpg feststellen soll.<br />
Wenn die Größe von einem oder mehreren .jpg's (in Bytes) nicht &quot;41020&quot; sind, wird auf der Konsole ein &quot;Error&quot; angezeigt.</p>
<p>Den Code um die Größe rauszukriegen habe ich schon, wie 'durchsuche/checke' ich jetzt einen Ordner nach den .jpg's?</p>
<p>Zudem kann ich bei meinem Größencode nicht mit 'if (groesse == &quot;41020&quot;)' checken.<br />
Da bräuchte ich ebenfalls Hilfe.</p>
<p>Mein Groessencode:</p>
<pre><code>{
size_t fsize = ifstream(&quot;ALE32716716TH12FA40EIA.jpg&quot;).seekg(0, ios_base::end).tellg();
cout &lt;&lt; fsize &lt;&lt; &quot; Bytes&quot; &lt;&lt; endl;
}
</code></pre>
<p>(Ich habe gelesen das wäre die einfachste Methode um die Bytezahl rauszukriegen)</p>
<p>Danke schonmal im vorraus!</p>
<p>MfG Johnny Z.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/235164/ordner-durchsuchen-und-jpg-groesse-feststellen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 08 Apr 2026 17:37:32 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/235164.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 26 Feb 2009 13:07:55 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Thu, 26 Feb 2009 13:07:55 GMT]]></title><description><![CDATA[<p>Hallo liebe CPPler!</p>
<p>Ich bin gerade dabei ein Programm zu schreiben, das einen Ordner nach allen .jpg absuchen soll (da ich die Namen der .jpg's nicht weiß) und danach die Größe von allen .jpg feststellen soll.<br />
Wenn die Größe von einem oder mehreren .jpg's (in Bytes) nicht &quot;41020&quot; sind, wird auf der Konsole ein &quot;Error&quot; angezeigt.</p>
<p>Den Code um die Größe rauszukriegen habe ich schon, wie 'durchsuche/checke' ich jetzt einen Ordner nach den .jpg's?</p>
<p>Zudem kann ich bei meinem Größencode nicht mit 'if (groesse == &quot;41020&quot;)' checken.<br />
Da bräuchte ich ebenfalls Hilfe.</p>
<p>Mein Groessencode:</p>
<pre><code>{
size_t fsize = ifstream(&quot;ALE32716716TH12FA40EIA.jpg&quot;).seekg(0, ios_base::end).tellg();
cout &lt;&lt; fsize &lt;&lt; &quot; Bytes&quot; &lt;&lt; endl;
}
</code></pre>
<p>(Ich habe gelesen das wäre die einfachste Methode um die Bytezahl rauszukriegen)</p>
<p>Danke schonmal im vorraus!</p>
<p>MfG Johnny Z.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1670627</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1670627</guid><dc:creator><![CDATA[Johnny Z.]]></dc:creator><pubDate>Thu, 26 Feb 2009 13:07:55 GMT</pubDate></item><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Thu, 26 Feb 2009 17:04:27 GMT]]></title><description><![CDATA[<p>Hi<br />
zuerstmal lass die Anführungszeichen bei deinem Größenvergleich weg:</p>
<pre><code class="language-cpp">if (groesse == 41020)
</code></pre>
<p>sonst machst du daraus eine Zeichenkette, und diese lässt sich nicht mit einem numerischen Wert vergleichen.</p>
<p>Was die Suche angeht, wären wohl FindFirstFile() und FindNextFile deine Freunde:</p>
<pre><code class="language-cpp">HANDLE          hSearch;
WIN32_FIND_DATA fData;

if (hSearch = FindFirstFile(&quot;*.jpg&quot;,&amp;fData)) {
      do {
         std::cout &lt;&lt; fData.cFileName &lt;&lt; std::endl;
      } while (FindNextFile(hSearch,&amp;fData));
      FindClose(hSearch);
   }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1670808</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1670808</guid><dc:creator><![CDATA[Halbleiter]]></dc:creator><pubDate>Thu, 26 Feb 2009 17:04:27 GMT</pubDate></item><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Thu, 26 Feb 2009 19:36:59 GMT]]></title><description><![CDATA[<p>Danke erstmal für deine Antwort!</p>
<p>Mein Code sieht zurzeit so aus:</p>
<pre><code>using namespace std;

HANDLE hSearch;
WIN32_FIND_DATA fData;

int main()
{
if (hSearch = FindFirstFile(&quot;*.jpg&quot;,&amp;fData))
{
      do
      {
	size_t fsize = ifstream(fData.cFileName).seekg(0, ios_base::end).tellg();
	if (fsize == 41020)
	{
	cout&lt;&lt;&quot;okay!&quot;;
	}
	else
	{
	cout&lt;&lt;&quot;Error!&quot;;
	}
      }
      while (FindNextFile(hSearch,&amp;fData));
      FindClose(hSearch);
   }
return 0;
}
</code></pre>
<p>Ich kriege aber Errors, was daran ist falsch?</p>
<p>Errors sind folgende:</p>
<blockquote>
<p>error C2228: left of '.seekg' must have class/struct/union type<br />
error C2228: left of '.tellg' must have class/struct/union type</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1670904</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1670904</guid><dc:creator><![CDATA[Johnny Z.]]></dc:creator><pubDate>Thu, 26 Feb 2009 19:36:59 GMT</pubDate></item><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Thu, 26 Feb 2009 19:48:48 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;fstream&gt;
</code></pre>
<p>vielleicht vergessen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1670911</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1670911</guid><dc:creator><![CDATA[Halbleiter]]></dc:creator><pubDate>Thu, 26 Feb 2009 19:48:48 GMT</pubDate></item><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Thu, 26 Feb 2009 21:05:13 GMT]]></title><description><![CDATA[<p>Jap danke.. Dachte es liegt vllt. daran wie er das du ifstream übergibt.<br />
Aber lag nur an dem kleinen Fehler. Danke dir! <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/1670964</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1670964</guid><dc:creator><![CDATA[Johnny Z.]]></dc:creator><pubDate>Thu, 26 Feb 2009 21:05:13 GMT</pubDate></item><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Fri, 27 Feb 2009 10:25:18 GMT]]></title><description><![CDATA[<p>Wenn ich nun einen Ordner nach den .jpg durchsuchen möchte, klappt das nicht, nur warum nicht?</p>
<pre><code>if (hSearch = FindFirstFile(&quot;ORDNER\\*.jpg&quot;,&amp;fData))
</code></pre>
<p>Kann mir da evtl. jemand helfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1671138</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1671138</guid><dc:creator><![CDATA[Johnny Z.]]></dc:creator><pubDate>Fri, 27 Feb 2009 10:25:18 GMT</pubDate></item><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Fri, 27 Feb 2009 10:45:29 GMT]]></title><description><![CDATA[<p>wahrscheinlich wird deine Pfadangabe ungültig sein. Bedenke, dass dein Programm ein akteulles Verzeichniss hat in dem es werkelt. Pfadangaben wie dein Beispiel sind relativ, und beziehen sich auf dieses Arbeitsverzeichnis. Mit</p>
<pre><code class="language-cpp">GetCurrentDirectory(DWORD nBufferLength, LPTSTR lpBuffer)
</code></pre>
<p>kannst du das aktuelle Verzeichnis auslesen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1671156</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1671156</guid><dc:creator><![CDATA[Halbleiter]]></dc:creator><pubDate>Fri, 27 Feb 2009 10:45:29 GMT</pubDate></item><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Fri, 27 Feb 2009 10:47:54 GMT]]></title><description><![CDATA[<p>1. ifstream ist völlig überflüssig, da die Größe bereits in fData.nFileSizeLow steht.</p>
<p>2. FindFirstFile liefert bei einem Fehler INVALID_HANDLE_VALUE zurück, daher darf hSearch nicht auf TRUE geprüft werden.</p>
<p>3. Der Ordner muss mit vollem Pfad angegeben werden, ansonsten bezieht sich FindFirstFile auf das aktuelle Arbeitsverzeichnis.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1671159</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1671159</guid><dc:creator><![CDATA[sri]]></dc:creator><pubDate>Fri, 27 Feb 2009 10:47:54 GMT</pubDate></item><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Fri, 27 Feb 2009 12:12:55 GMT]]></title><description><![CDATA[<p>Danke für deine Antwort!</p>
<p>sri schrieb:</p>
<blockquote>
<p>3. Der Ordner muss mit vollem Pfad angegeben werden, ansonsten bezieht sich FindFirstFile auf das aktuelle Arbeitsverzeichnis.</p>
</blockquote>
<p>Es soll sich ja aufs aktuelle Arbeitsverzeichnis beziehen, nur eben noch auf einen Ordner der in dem Arbeitsverzeichnis ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1671243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1671243</guid><dc:creator><![CDATA[Johnny Z.]]></dc:creator><pubDate>Fri, 27 Feb 2009 12:12:55 GMT</pubDate></item><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Fri, 27 Feb 2009 12:25:46 GMT]]></title><description><![CDATA[<p>maybe helps,</p>
<pre><code class="language-cpp">DWORD GetDirectoryFilesizes()
{
	HANDLE fHandle; 
	WIN32_FIND_DATA wfd; 

	DWORD FilesSizes=0;

	fHandle = FindFirstFile(&quot;c:\...\...\*.jpg&quot;,&amp;wfd); 
	if(INVALID_HANDLE_VALUE != fHandle)
	{
		do 
		{ 
		 if (!( (wfd.cFileName[0]=='.') &amp;&amp; ( (wfd.cFileName[1]=='.' &amp;&amp; wfd.cFileName[2]==0) || wfd.cFileName[1]==0 ) )) 
		 { 
			if (wfd.dwFileAttributes &amp; FILE_ATTRIBUTE_DIRECTORY) 
			{ 
				// folders
			} 
			else 
			{ 
				   FilesSizes+=(wfd.nFileSizeHigh * (MAXDWORD+1)) + wfd.nFileSizeLow;// sum filesizes 
			} 
		 } 
		} 
		while (FindNextFile(fHandle,&amp;wfd)); 
		FindClose(fHandle);
	}

	return FilesSizes;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1671253</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1671253</guid><dc:creator><![CDATA[maybeh]]></dc:creator><pubDate>Fri, 27 Feb 2009 12:25:46 GMT</pubDate></item><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Fri, 27 Feb 2009 13:44:18 GMT]]></title><description><![CDATA[<pre><code>[b]DWORD[/b] FilesSizes=0;
...
...
FilesSizes+=(wfd.nFileSizeHigh * (MAXDWORD+1)) + wfd.nFileSizeLow;// sum filesizes
</code></pre>
<p>rofl!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1671351</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1671351</guid><dc:creator><![CDATA[viel_spaß]]></dc:creator><pubDate>Fri, 27 Feb 2009 13:44:18 GMT</pubDate></item><item><title><![CDATA[Reply to Ordner durchsuchen und .jpg Groesse feststellen on Fri, 27 Feb 2009 14:05:25 GMT]]></title><description><![CDATA[<p>Johnny Z. schrieb:</p>
<blockquote>
<p>Danke für deine Antwort!</p>
<p>sri schrieb:</p>
<blockquote>
<p>3. Der Ordner muss mit vollem Pfad angegeben werden, ansonsten bezieht sich FindFirstFile auf das aktuelle Arbeitsverzeichnis.</p>
</blockquote>
<p>Es soll sich ja aufs aktuelle Arbeitsverzeichnis beziehen, nur eben noch auf einen Ordner der in dem Arbeitsverzeichnis ist.</p>
</blockquote>
<p>Dann solltest Du Dir das aktuelle Arbeitsverzeichnis mit GetCurrentDirectory holen und daran dann die relative Pfadangabe anfügen (wie Halbleiter es schon schrieb).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1671370</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1671370</guid><dc:creator><![CDATA[sri]]></dc:creator><pubDate>Fri, 27 Feb 2009 14:05:25 GMT</pubDate></item></channel></rss>