1111195
(梨紗 野村)
1
こんにちは
フォルダに格納されている、ファイル名がyyyyMMddHHmmss形式であるpdfファイルを取得し、
降順に並び替えを行いたいのですが、良い方法はないでしょうか?
正規表現などを使ってスマートに実装させたいと思っています。
どうかご教授お願いいたします。
【やりたいこと】
ファイル名がyyyyMMddHHmmss形式であるpdfファイルを降順に並び替えたい。
【ファイル名の取得】
Filename = System.IO.Directory.GetFiles(フォルダ名, “.pdf”)
【フォルダに格納されているファイル】
20210907123456.pdf
20210908123456.pdf
20210909123456.pdf
20210910123456.pdf
20210910123456.xlsx
テスト.pdf
【期待する実行結果】
20210910123456.pdf
20210909123456.pdf
20210908123456.pdf
20210907123456.pdf
よろしくお願いいたします。
Yoichi
(Yoichi)
3
こんにちは
ファイル名が数値14桁固定であるなら、以下で可能かと思います。
System.IO.Directory.GetFiles(yourPath, "*.pdf").OrderByDescending(Function(f) System.IO.Path.GetFileNameWithoutExtension(f)).ToArray()
1 Like
Yoichi
(Yoichi)
4
こんにちは
すみません。
ファイル名が数値以外のものを除去する必要があるのですね。
数値14桁以外を除去するとすると以下お試しください。
System.IO.Directory.GetFiles(yourPath, "*.pdf").Where(Function(f) System.Text.RegularExpressions.Regex.IsMatch(System.IO.Path.GetFileNameWithoutExtension(f),"^\d{14}$")).OrderByDescending(Function(f) System.IO.Path.GetFileNameWithoutExtension(f)).ToArray()
1 Like
system
(system)
Closed
7
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.