ディレクトリに次の形式のファイルがありますddMMyyyyhhmmss
(例: 190420120533481146Wj.jpeg
)。このディレクトリから最新の 10 個のファイルのみを選択しようとしています。
1904201212
ご覧のとおり、現在の日付の部分文字列 ( ) を使用してファイル名を検索しています。
例えば :
Actual Date :19042012121306
Subs value :190420121213
以下のプログラムでわかるように、現在の日付の分の値で検索を開始しています。現在の日付の分の値のファイルがない場合は、
- 検索を現在の日時の値に再定義したいのですが、そうでない場合は
- さらに現在の日付値に再定義したいのですが、見つからない場合は、
- そのような前日に再定義します。
public class Raa {
public static void main(String args[])
{
File myDir = new File("C:\\");
String res = new Raa().getTime();
System.out.println(res);
String substring = res.substring(0,12);
System.out.println(substring);
FilenameFilter select = new FileListFilter(substring);
File[] contents = myDir.listFiles(select);
for (File file : contents) {
System.out.println(file.getName());
}
}
public String getTime()
{
SimpleDateFormat sdf = new SimpleDateFormat("ddMMyyyyhhmmss");
Date curDate = new Date();
String strDate = sdf.format(curDate);
return strDate;
}
}
検索をプログラム的に継続的に再定義するにはどうすればよいでしょうか?