ネタ元 → LINQ は面白い(って、わたし、この子リンキューって呼んじゃうのよね、ついw)
Sub Main()
Console.WriteLine("今日作ったファイル")
Dim Files = From file In Directory.GetFiles("c:\wankuma") _
Where System.IO.File.GetCreationTime(file).ToString("yyyyMMdd") _
= Date.Today.ToString("yyyyMMdd") _
Order By (file) _
Select file
For Each Todays In Files
Console.WriteLine(Todays)
Next
End Sub
ほほぉ、なるほど。
LINQを持ち合わせていない C++/CLI と STL/CLR でなんとかしてみる:
value class different_date {
static String^ today =
DateTime::Now.ToString(L"yyyyMMdd");
public:
static bool exec(String^ file) {
return File::GetCreationTime(file).ToString(L"yyyyMMdd")
!= today;
}
};
int main() {
Console::WriteLine(L"今日作ったファイル");
// ファイル名集合から
cliext::vector<String^>
files(Directory::GetFiles(L"D:\\Program Files\\Work"));
// 条件を満たさないものを取り除き
files.erase(cliext::remove_if(files.begin(), files.end(),
gcnew Predicate<String^>(different_month::exec)),
files.end());
// ソートして
cliext::sort(files.begin(), files.end());
// 出力する
for each ( String^ item in files ) Console::WriteLine(item);
}
...努力は認めてくださいまし。LINQはすげーですやっぱ。