<?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[Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren...]]></title><description><![CDATA[<p>Ich muss eine funktion schreiben die überprüft ob die vorhandene Datei älter(änderungsdatum der datei, da die gleichnamige datei überkopiert werden soll wenn sie neuer is) is wie die neue Datei:</p>
<p>if((CompareDateTime(FileDateToDateTime(FileAge(altedatei)),FileDateToDateTime(FileAge(neudatei)))) == LessThanValue)</p>
<p>Mit FileAge bekomme ich nur das Erstellungsdatum der Datei zurück, brauche aber das Änderungsdatum der Datei, hab schon alles durchsucht finde keine andere Funktion ausser:</p>
<p>stat(dateiMitPfad.c_str(), &amp;datei_infos);</p>
<p>ctime(&amp;datei_infos.st_mtime));</p>
<p>datei_infos.st_mtime hätte genau das was ich brauche, nur wie bekomme ich es in<br />
das DateTimeFormat konvertiert? Oder in ein normales Datumsformat ?</p>
<p>Hat einer ne Idee?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/186864/änderungsdatum-einer-datei-ermitteln-und-ins-datetime-format-konvertieren</link><generator>RSS for Node</generator><lastBuildDate>Wed, 19 Aug 2026 12:34:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/186864.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 13 Jul 2007 08:00:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Fri, 13 Jul 2007 08:00:57 GMT]]></title><description><![CDATA[<p>Ich muss eine funktion schreiben die überprüft ob die vorhandene Datei älter(änderungsdatum der datei, da die gleichnamige datei überkopiert werden soll wenn sie neuer is) is wie die neue Datei:</p>
<p>if((CompareDateTime(FileDateToDateTime(FileAge(altedatei)),FileDateToDateTime(FileAge(neudatei)))) == LessThanValue)</p>
<p>Mit FileAge bekomme ich nur das Erstellungsdatum der Datei zurück, brauche aber das Änderungsdatum der Datei, hab schon alles durchsucht finde keine andere Funktion ausser:</p>
<p>stat(dateiMitPfad.c_str(), &amp;datei_infos);</p>
<p>ctime(&amp;datei_infos.st_mtime));</p>
<p>datei_infos.st_mtime hätte genau das was ich brauche, nur wie bekomme ich es in<br />
das DateTimeFormat konvertiert? Oder in ein normales Datumsformat ?</p>
<p>Hat einer ne Idee?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1324364</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1324364</guid><dc:creator><![CDATA[nostre]]></dc:creator><pubDate>Fri, 13 Jul 2007 08:00:57 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Fri, 13 Jul 2007 08:12:39 GMT]]></title><description><![CDATA[<p>Versuch es mal so:</p>
<pre><code class="language-cpp">AnsiString FileName; // hier muss Pfad und Name der Datei rein
TSearchRec sr;
int iAttributes = faAnyFile;
SYSTEMTIME sysTime;
TDateTime dtFileCreated;  // enthält Erstellungsdatum
TDateTime dtFileLastModified;  // enthält Datum letzte Änderung
if (FindFirst(FileName, iAttributes, sr) == 0)
{
	FileTimeToSystemTime(&amp;(sr.FindData.ftCreationTime), &amp;sysTime);
	dtFileCreated = TDateTime(sysTime.wHour, sysTime.wMinute, sysTime.wSecond, sysTime.wMilliseconds) + TDateTime(sysTime.wYear, sysTime.wMonth, sysTime.wDay);
	FileTimeToSystemTime(&amp;(sr.FindData.ftLastWriteTime), &amp;sysTime);
	dtFileLastModified = TDateTime(sysTime.wHour, sysTime.wMinute, sysTime.wSecond, sysTime.wMilliseconds) + TDateTime(sysTime.wYear, sysTime.wMonth, sysTime.wDay);
}
FindClose(sr);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1324384</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1324384</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Fri, 13 Jul 2007 08:12:39 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Fri, 13 Jul 2007 08:33:40 GMT]]></title><description><![CDATA[<p>Danke hast mir damit sehr geholfen, schade nur das die Uhrzeit nicht stimmt, tippe darauf das die Sommerzeit nicht richtig berücksichtig wird, siehe Screenshot:</p>
<p><a href="http://www.budbrain.de/pics/fast.gif" rel="nofollow">http://www.budbrain.de/pics/fast.gif</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1324402</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1324402</guid><dc:creator><![CDATA[nostre]]></dc:creator><pubDate>Fri, 13 Jul 2007 08:33:40 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Fri, 13 Jul 2007 08:35:38 GMT]]></title><description><![CDATA[<p>Die Systemzeit wird als UTC angegeben. Mit GetLocalTime() und GetSystemTime() kann man z. B. die Zeitverschiebung ermitteln.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1324416</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1324416</guid><dc:creator><![CDATA[Fincki]]></dc:creator><pubDate>Fri, 13 Jul 2007 08:35:38 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Fri, 13 Jul 2007 08:39:23 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Das kann man auch alles den entsprechenden Funktionen überlassen<br />
Dazu must du nach dem Auslesen des Datums aus dem Struct erstmal die WinAPI-Funktion <strong>FileTimeToLocalFileTime</strong> anwenden. Danach wie gezeigt <strong>FileTimeToSystemTime</strong>. Zum Schluß die VCL-Funktion <strong>SystemTimeToDateTime</strong>.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1324420</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1324420</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Fri, 13 Jul 2007 08:39:23 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Fri, 13 Jul 2007 09:20:41 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">TSearchRec sr;
 int iAttributes = faAnyFile;
 SYSTEMTIME sysTime;
 GetLocalTime(&amp;sysTime);

 TDateTime dtFileCreated;  // enthält Erstellungsdatum
 TDateTime dtFileLastModified;  // enthält Datum letzte Änderung
 if (FindFirst(FileName, iAttributes, sr) == 0)
 {
    FileTimeToSystemTime(&amp;(sr.FindData.ftCreationTime), &amp;sysTime);
    dtFileCreated = TDateTime(sysTime.wHour, sysTime.wMinute, sysTime.wSecond, sysTime.wMilliseconds) + TDateTime(sysTime.wYear, sysTime.wMonth, sysTime.wDay);
    FileTimeToSystemTime(&amp;(sr.FindData.ftLastWriteTime), &amp;sysTime);
    dtFileLastModified = TDateTime(sysTime.wHour, sysTime.wMinute, sysTime.wSecond, sysTime.wMilliseconds) + TDateTime(sysTime.wYear, sysTime.wMonth, sysTime.wDay);
 }
 FindClose(sr);

 return dtFileLastModified;
</code></pre>
<p>das hat mich auch net weiter gebracht -&gt; GetLocalTime(&amp;sysTime);<br />
Ich weiss nicht wo Ich genau FileTimeToLocalFileTime anwenden soll?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1324465</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1324465</guid><dc:creator><![CDATA[nostre]]></dc:creator><pubDate>Fri, 13 Jul 2007 09:20:41 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Fri, 13 Jul 2007 09:37:31 GMT]]></title><description><![CDATA[<p>ich vermute mal es sollte dann so aussehen...</p>
<pre><code class="language-cpp">TSearchRec sr; 
 int iAttributes = faAnyFile; 
 SYSTEMTIME sysTime; 
 FILETIME filetime;

 TDateTime dtFileCreated;  // enthält Erstellungsdatum 
 TDateTime dtFileLastModified;  // enthält Datum letzte Änderung 
 if (FindFirst(FileName, iAttributes, sr) == 0) 
 { 
    FileTimeToLocalFileTime(&amp;(sr.FindData.ftCreationTime), &amp;filetime);
    FileTimeToSystemTime(&amp;filetime, &amp;sysTime); 
    dtFileCreated = SystemTimeToDateTime(sysTime); 
    FileTimeToLocalFileTime(&amp;(sr.FindData.ftLastWriteTime), &amp;filetime);
    FileTimeToSystemTime(&amp;filetime, &amp;sysTime); 
    dtFileLastModified = SystemTimeToDateTime(sysTime); 
 } 
 FindClose(sr); 

 return dtFileLastModified;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1324482</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1324482</guid><dc:creator><![CDATA[Linnea]]></dc:creator><pubDate>Fri, 13 Jul 2007 09:37:31 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Fri, 13 Jul 2007 09:45:03 GMT]]></title><description><![CDATA[<p>Linnea schrieb:</p>
<blockquote>
<p>ich vermute mal es sollte dann so aussehen...</p>
<pre><code class="language-cpp">TSearchRec sr; 
 int iAttributes = faAnyFile; 
 SYSTEMTIME sysTime; 
 FILETIME filetime;
  
 TDateTime dtFileCreated;  // enthält Erstellungsdatum 
 TDateTime dtFileLastModified;  // enthält Datum letzte Änderung 
 if (FindFirst(FileName, iAttributes, sr) == 0) 
 { 
    FileTimeToLocalFileTime(&amp;(sr.FindData.ftCreationTime), &amp;filetime);
    FileTimeToSystemTime(&amp;filetime, &amp;sysTime); 
    dtFileCreated = SystemTimeToDateTime(sysTime); 
    FileTimeToLocalFileTime(&amp;(sr.FindData.ftLastWriteTime), &amp;filetime);
    FileTimeToSystemTime(&amp;filetime, &amp;sysTime); 
    dtFileLastModified = SystemTimeToDateTime(sysTime); 
 } 
 FindClose(sr); 

 return dtFileLastModified;
</code></pre>
</blockquote>
<p>ja genau so <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="🙂"
    /> vielen dank an alle, ihr seid ne spitzen community, habt mich schon oft rausgerissen <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/1324489</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1324489</guid><dc:creator><![CDATA[nostre]]></dc:creator><pubDate>Fri, 13 Jul 2007 09:45:03 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Fri, 13 Jul 2007 09:49:46 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Anzumerken wäre noch das bei den WinAPI-Funktion noch das Rückgabeergebnis laut MSDN überprüft werden sollte, und dementsprechend auch eine Fehlerbehandlung eingebaut werden sollte.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1324494</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1324494</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Fri, 13 Jul 2007 09:49:46 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Mon, 28 Jan 2008 11:25:57 GMT]]></title><description><![CDATA[<p>Hi. Ich kram mal das Thema raus, da ich mich auch dafür interessiere. Wie genau funktioniert das mit der Prüfung des Rückgabeergebnisses? Auf -1 oder NULL wird dies wohl nicht bezoge sein. Habe mit WinAPI noch nicht allzuviel gemacht. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1444974</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1444974</guid><dc:creator><![CDATA[Maiky]]></dc:creator><pubDate>Mon, 28 Jan 2008 11:25:57 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Mon, 28 Jan 2008 12:30:53 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Was die Rückgabewerte für die einzelnen Funktionen bedeuten kannst du in deren Beschreibung in der MSDN nachlesen. In den meisten Fällen ist es in der Tat eine Überprüfung auf 0 (bzw. false)</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1445022</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1445022</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Mon, 28 Jan 2008 12:30:53 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Mon, 28 Jan 2008 12:40:34 GMT]]></title><description><![CDATA[<p>Ich meine, was soll drinstehen, wenn es nicht geklappt haben sollte, weil Beispielsweise FileName falsch war? Ich sehe in der Hilfe nirgends &quot;Wenn kein Wert gefunden, dann gibt Funktion ein ??? zurück&quot;. Woher weiss ich nun auf was ich die Rückgabe TDateTime kontrollieren soll? Einfaches ausprobieren? <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/1445028</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1445028</guid><dc:creator><![CDATA[Maiky]]></dc:creator><pubDate>Mon, 28 Jan 2008 12:40:34 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Mon, 28 Jan 2008 12:55:57 GMT]]></title><description><![CDATA[<p>WinAPI-Funktionen geben fast immer 0 zurück wenn ein Fehler aufgetreten ist (wie akari schon sagte). Die Art des fehlers bekommt man dann meist mit GetLastError().<br />
Schau doch einfach mal nach diesen Funktionen in der MSDN.<br />
Bsp. <a href="http://msdn2.microsoft.com/en-us/library/ms724277.aspx" rel="nofollow">http://msdn2.microsoft.com/en-us/library/ms724277.aspx</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1445038</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1445038</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Mon, 28 Jan 2008 12:55:57 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Mon, 28 Jan 2008 13:04:03 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Maiky schrieb:</p>
<blockquote>
<p>Woher weiss ich nun auf was ich die Rückgabe TDateTime kontrollieren soll? Einfaches ausprobieren? <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>
</blockquote>
<p>WinAPI-Funktionen geben garantiert kein TDateTime zurück. In deinem speziellen Fall must du eben mit der Fehlerbehandlung nicht erst anfangen wenn du ein TDateTime hast sondern schon wenn die WinAPi-Funktionen aufgerufen werden.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1445048</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1445048</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Mon, 28 Jan 2008 13:04:03 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Mon, 28 Jan 2008 13:45:23 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">TDateTime __fastcall GetFileLastModified(AnsiString FileName)
{
    TSearchRec sr;
    int iAttributes = faAnyFile;
    SYSTEMTIME sysTime;
    FILETIME filetime;

    TDateTime dtFileLastModified;
    if (FindFirst(FileName, iAttributes, sr)==0)
    {
        if (FileTimeToLocalFileTime(&amp;(sr.FindData.ftLastWriteTime), &amp;filetime))
        {
            if (FileTimeToSystemTime(&amp;filetime, &amp;sysTime)!=0)
            {
                dtFileLastModified = SystemTimeToDateTime(sysTime);
            }
        }
    }
    FindClose(sr);

    return dtFileLastModified;
}
</code></pre>
<p>Und auf was und wie prüfe ich nun letztendlich die Rückgabe?</p>
<pre><code class="language-cpp">TDateTime test;
Label1-&gt;Caption = test; // Ausgabe: 00:00:00
</code></pre>
<p>Eigentlich ist <strong>test</strong> ja kein AnsiString.. bin etwas verwirrt wie ich das korrekt auswerten soll, oder darf ich wirklich <strong>if (test!=&quot;00:00:00&quot;)</strong> als Prüfung? Sieht komisch aus. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1445082</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1445082</guid><dc:creator><![CDATA[Maiky]]></dc:creator><pubDate>Mon, 28 Jan 2008 13:45:23 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Mon, 28 Jan 2008 14:28:08 GMT]]></title><description><![CDATA[<p>Intern wird Zeit und Datum in TDateTime als double repräsentiert. Es gibt aber noch einen Konvertierungsoperator für int. Es sollte also</p>
<pre><code class="language-cpp">if (test!=0)
</code></pre>
<p>gehen.<br />
Du kannst natürlich auch eine Exception werfen, wenn die Umwandlung nicht geht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1445110</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1445110</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Mon, 28 Jan 2008 14:28:08 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Mon, 28 Jan 2008 17:31:09 GMT]]></title><description><![CDATA[<p>Also Frage ich entweder nach</p>
<pre><code class="language-cpp">if (int(test)!=0)
</code></pre>
<p>oder</p>
<pre><code class="language-cpp">if (double(test)!=0)
</code></pre>
<p>ab?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1445211</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1445211</guid><dc:creator><![CDATA[Maiky]]></dc:creator><pubDate>Mon, 28 Jan 2008 17:31:09 GMT</pubDate></item><item><title><![CDATA[Reply to Änderungsdatum einer Datei ermitteln und ins DateTime Format konvertieren... on Mon, 28 Jan 2008 18:04:24 GMT]]></title><description><![CDATA[<p>So wie ich es geschrieben habe sollte es reichen, ansonsten die erstere Variante.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1445233</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1445233</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Mon, 28 Jan 2008 18:04:24 GMT</pubDate></item></channel></rss>