jokada
(jokada)
1
こんにちは
フォルダに格納されているファイル名を取得して並び替えを行いたいのですが
期待する動きにならないため、ご教示お願いいたします。
【期待する動き】
桁数の違う数値を降順に並び替えたい
※一部、数値以外の文字列が含まれる。
こちらは、順不同です。
【ファイル名の取得】
Filename = System.IO.Directory.GetFiles(フォルダ名, “.xls”)
【フォルダに格納されているファイル】
A1-1.xlsx
A1-20.xlsx
A1-120.xlsx
A1-120BB.xlsx
【実行結果】
A1-20.xlsx
A1-120BB.xlsx
A1-120.xlsx
A1-1.xlsx
【期待する実行結果】
A1-120BB.xlsx
A1-120.xlsx
A1-20.xlsx
A1-1.xlsx
または
A1-120.xlsx
A1-120BB.xlsx
A1-20.xlsx
A1-1.xlsx
よろしくお願いいたします。
Yoichi
(Yoichi)
2
こんにちは
一例として、少し長いですが以下のような感じで可能かと思います。
Filename = Filename.OrderByDescending(Function(f) Int32.Parse(System.TExt.RegularExpressions.Regex.Match(System.IO.Path.GetFileNameWithoutExtension(f),"(?<=-)\d+").Value)).ToArray()
1 Like
jokada
(jokada)
3
Yoichiさん
問題なく期待通りの動きになりました。
いつもご教示いただきありがとうございます!
2 Likes
system
(system)
Closed
5
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.