ファイルの更新日を取得し表示するには?

解決


初心者です  2004-03-15 06:40:48  No: 7682

あるファイルの更新日を下記のような感じで取得し、
テキストボックスに表示したいのですが,
ファイルの更新日より1、2秒多く表示されることがあり、
困っています。正しく表示させるためにはどうしたらいいのか
教えてください。お願いします。

filetime:= FileDateToDateTime(FileAge(filename));
edit1.text:=DateTimeToStr(filetime);


にしの  2004-03-15 09:21:16  No: 7683

FileAgeは、FileTimeToDosDateTimeで一度DOSの日付日付形式に変換しています。
これは、制度が2秒ですので、1〜2秒の誤差が生じます。

http://hp.vector.co.jp/authors/VA009712/take/delphi/kabesys.htm
にある、「ファイルの日付と時刻を得る(高度版)」を参照してください。


ふぐちゃん  2004-03-15 09:59:54  No: 7684

このページも参考になりそうですね。
http://www2f.biglobe.ne.jp/~kana/susie_trouble.html


初心者です  2004-03-16 23:36:37  No: 7685

にしのさん、ふぐちゃんさんありがとうございます。
ファイルの更新日は表示はしていませんがミリ秒まであったんですね。
FileAge(filename)では
ミリ秒を切り上げて表示するので誤差が出るんですね。
理解できました。
ありがとうございました。


初心者です  2004-03-16 23:37:27  No: 7686

忘れてました^^;


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加