【发布时间】:2016-02-25 05:51:39
【问题描述】:
我选择文件夹中的所有文件并将所有文件名添加到 2 个列表中。 xmlFilePath 和 listVersion
例如,我的文件名如下所示
1.8.1
1.8.2
1.10.0
1.10.1
但以下代码添加其名称如下。
1.10.0, 1.10.1, 1.8.1, 1.8.2
我想改变它的顺序如下(按它的名字排序)
1.8.1, 1.8.2, 1.10.0, 1.10.1,
我怎样才能达到这个要求?
FolderBrowserDialog folderDlg = new FolderBrowserDialog();
DialogResult result = folderDlg.ShowDialog();
if (result == DialogResult.OK)
{
string[] files = Directory.GetFiles(folderDlg.SelectedPath);
lblFolder.Text = "Folder : " + folderDlg.SelectedPath;
lblFiles.Text = "No of Xml Found : " + files.Length.ToString();
try
{
foreach (string filePath in Directory.GetFiles(folderDlg.SelectedPath))
{
xmlFilePath.Add(filePath);
}
foreach (string file in files)
{
string fileName = Path.GetFileNameWithoutExtension(file);
listVersion.Add(fileName);
}
}
catch (System.Exception ex)
{
lbl_notifications.Text = ex.Message;
}
}
【问题讨论】:
-
这些数字看起来像语义版本号,使用 semver 订购可以查看this answer。
标签: c# .net list sorting version