IComparerを使ってArray.Sort()でソートする。
使い方は、
string[] list = { "01.txt", "1.txt", "02.txt" }
Array.Sort(list, new ExplorerSortComparer());
こんな感じ
--- ExplorerSortComparer Class ---
public class ExplorerSortComparer : IComparer {
[DllImport("shlwapi.dll", CharSet = CharSet.Unicode, ExactSpelling = true)]
public static extern int StrCmpLogicalW(string str1, string str2);
public int Compare(object obj1, object obj2) {
return StrCmpLogicalW((string)obj1, (string)obj2));
}
}
0 コメント:
コメントを投稿