• ベストアンサー

作成してから○○日以上経過したファイルを削除したい

いつもお世話になっています。 現在VC++で5分おきにファイルが自動生成されるプログラムを作っています。 ファイル名は年月日時分秒をつけています。20080306100500、20080306100000など。 この処理に、あるタイミングで現時点より2日(48時間)以上前のファイルはすべて削除する処理を加えたいと考えています。 現時点より○○日以上前もしくは○○時間以上前というのは、どのように判別したら良いかで詰まっています。 何か良い条件の書き方等ありましたら、教えていただけると助かります。

質問者が選んだベストアンサー

  • ベストアンサー
  • edge_wind
  • ベストアンサー率55% (44/79)
回答No.1

個人的には、tm構造体にファイル名から年・月・日・時・分・秒の情報を放り込んで、 mktime関数を使ってtime_t型に変換し、暦時間で現在時刻と比較するのが簡単かな?と思います。 http://www.geocities.jp/ky_webid/c/054.html もっと良い方法がありそうですが…。

Mitsunari
質問者

お礼

お礼が遅くなりましてすみません。 アドバイス頂いたように処理したところ、無事解決致しました。 どうもありがとうございました。

関連するQ&A

  • バッチ処理でファイルの削除

    よろしく願いします。 特定のフォルダ内にあるファイル(pdf)を自動で削除するバッチを作りたいと思っています。 ファイルは20090507161506900.pdfみたいに頭に年月日が入っています。 削除条件として、30日前のものだけ削除したいです。 実行は、Windowsのタスク処理でやろうとしています。 どうかよろしくお願いします。

  • WMVの隠しファイル?AlbumArtを削除したい

    音楽ファイルを管理しているフォルダに、AlbumArt{xxxx}Small.jpg、AlbumArt{xxxx}Large.jpg をいうファイルが自動的に生成されてしまいました。 Visualizationの設定で、自動的に生成するのは防げたようなのですが、既に作成されてしまったファイルを削除しようとすると、 「AlbumArt[xxxx}Large.jpgファイルはシステムファイルです。削除するとシステムやプログラムが正しく動作しなくなる可能性があります。」と出ます。 これを無視して削除してしまっても大丈夫でしょうか? それとも削除する方法があるのでしょうか? よろしくお願いいたします。

  • ファイルを削除しようと思ったら

    ファイルを削除しようと思ったら、「このファイルはプログラムです。削除すると編集できなくなるドキュメントがある可能性があります。」と表示されます。 他に影響が出ず、安全に削除するにはどうすればいいのですか? valuestar vc500j2を使ってます。アドバイスをよろしくお願いします。

  • ファイルを削除しようと思ったら

    ファイルを削除しようと思ったら、「このファイルはプログラムです。そのため編集できなくなるドキュメントがある可能性があります。」と表示されます。 他に影響が出ず、安全に削除するにはどうすればいいんでしょうか? 使ってるのはvaluestar nx vc500j/2です。よきアドバイスよろしくお願いします。

  • VB.NETでの特殊なファイル削除操作

    VB.NETでの特殊なファイル削除操作 フォルダ内に以下例のような撮影された画像ファイル群があり、各ファイル名は撮影時間を元に(年月日_時分秒_ミリ秒)名前付けされたもので、この同じ「秒」内に撮影された2枚目以降のファイルを、プログラム的に削除したいのですが、上手くいきません。 フォルダ内のファイル 20100709_135601_113.jpg 20100709_135601_222.jpg 20100709_135601_316.jpg 20100709_135601_364.jpg 20100709_135602_347.jpg 20100709_135602_425.jpg 20100709_135603_910.jpg 20100709_135605_175.jpg 20100709_135605_251.jpg 20100709_135606_628.jpg 例えば、一番上の13時56分01秒には、4枚撮影されたjpgファイルがありますが、最初に撮影された「20100709_135601_113.jpg」 だけを残し 残りの 「20100709_135601_222.jpg」 「20100709_135601_316.jpg」 「20100709_135601_364.jpg」 のファイルを消し、1秒1ファイルだけにしたいのです。 そしてこの結果を 20100709_135601_113.jpg 20100709_135602_347.jpg 20100709_135603_910.jpg 20100709_135605_175.jpg 20100709_135606_628.jpg としたいのです。 なお、このjpgファイルを作成する側のアプリは触れません。 こちら側のプログラムで、削除処理を行いたいです。 ファイル名定義もこのままです。 135604のように、秒内で存在しないjpgファイルも存在します。 どなたか、よいお知恵をお貸し下さいませ。 どうぞよろしくお願いします。 (WinXP Vb.NET2010)

  • ☆BAT:日時をTXTファイル名にして出力するには

    例えば作成したいテキストファイルが有るとします。 現行はBAT実行の都度、手作業でファイル名を「年月日時分秒」にリネームしています。 これを自動処理する妙案が有れば是非ご指導下さい。 宜しくお願いいたします。 echo %COMPUTERNAME%今日は良いお天気ですね > D:\yyyymmdd_hhmmss.txt 以上

  • ファイルの削除

    はじめて質問します。指定するフォルダの中にあるファイルの内1時間以上前のもの(引数で変更できるように)を全て削除するプログラムのサンプルが作れなくて困っています。せっぱつまっています。宜しくお願いします。

    • ベストアンサー
    • CGI
  • ファイル名によりファイルをフォルダに自動分類するソフト

    デジカメ写真の整理をしています。 デジカメの写真ファイルの名前を自動リネームするソフトで年月日時分秒というようにリネームしています。 これらのファイルを年月日という名前のフォルダに自動的に分類できるソフトを探しています。 写真ファイルを分類ソフトに入力すると、自動的に年月日を名前とするフォルダを作成して分類されるようなソフトがあると良いのですが。

  • 未使用で一定期間以上経過したファイルの削除

    未使用で一定期間以上経過したファイル(例えばTemp内にあって一週間更新されていないファイル)を自動的に削除するバッチファイルを作成したいと考えています。 何かうまい方法はないでしょうか? unixでの find /temp -mtime +7 -exec rm {} \; のfindにあたるようなのがあれば非常に助かります。

  • 不要ファイルの削除方法について

     ハードディスクの容量が満杯になり、「不要なファイルかプログラムを削除して下さい」とのメッセージが表示されます。  コンピュータからドライブを開き、フォルダーを表示させるのですが、そのフォルダーやファイルが必要なものなのか削除しても差し支えないものなのかが判りません。どのように判別すれば良いのか教えて下さい。  

専門家に質問してみよう