vb.net - 使用 Visual Studio 2012 对通过 Directory.GetFiles 获得的文件进行排序
问题描述
我意识到我使用的是旧版本的 Visual Studio,但在获取一些使用 Directory.GetFiles 返回的文件时遇到问题。我写了一个程序,它是一个圣经诗歌游戏。我正在尝试向程序添加另一种“模式”,允许用户将该程序用作打开的圣经并阅读所选书中的经文。该程序的游戏部分运行良好,我没有任何问题。我在主表单中添加了一个组合框,当用户单击按钮时,该组合框会加载所选书中的经文。这些章节在相应书籍的目录(文件夹)中按顺序排列[即:John1.txt、John2.txt 等]。使用下面的代码,将返回章节:[John1.txt, John10.txt, John11.txt...]
Private Sub LoadBook()
Dim CorrectVersePath As String = Nothing
Select Case My.Settings.Version
Case "KJV"
If My.Settings.TestamentName = "NewTestament" Then
Label2.Text = "New Testament"
CorrectVersePath = CorrectVersePath & KingJamesPath & "NewTestament\" & My.Settings.BookName & "\"
ElseIf My.Settings.TestamentName = "OldTestament" Then
Label2.Text = "Old Testament"
CorrectVersePath = CorrectVersePath & KingJamesPath & "OldTestament\" & My.Settings.BookName & "\"
End If
Case "NIV"
If My.Settings.TestamentName = "NewTestament" Then
Label2.Text = "New Testament"
CorrectVersePath = CorrectVersePath & NewInternationalPath & "NewTestament\" & My.Settings.BookName & "\"
ElseIf My.Settings.TestamentName = "OldTestament" Then
Label2.Text = "Old Testament"
CorrectVersePath = CorrectVersePath & NewInternationalPath & "OldTestament\" & My.Settings.BookName.ToString & "\"
End If
End Select
Dim Chapters = Directory.GetFiles(CorrectVersePath)
Dim chaptname As Array = Directory.GetFiles(CorrectVersePath)
For Each cname As String In chaptname
x += 1
ComboBox1.Items.Add(IO.Path.GetFileNameWithoutExtension(cname))
Next
End Sub
有没有办法让这些章节按照它们在文件夹中的顺序返回?我尝试将 Array.Sort 函数与默认配置一起使用,但它不起作用。是的,我读到了这个:
解决方案
推荐阅读
- php - 尝试打印数组中的值时出现非法字符串偏移
- c# - 当我在 ServiceFabric 群集上使用 EventFlow 侦听 ETW 事件时出现“系统资源不足”
- xpath - 通过 URL-Source 从 XML 文件中提取信息需要大量时间
- r - 当变量是原子向量时删除负值
- c# - 如何在 WPF 中的 ViewModel 中绑定 Drop 和 PreviewMouseLeftButtonDown 事件
- javascript - 如何在不刷新的情况下运行javascript函数“live”?
- mysql - MariaDB 10.2.16 数据库服务器启动失败
- c# - C# 在控制台应用程序中管理线程
- jersey - 如何使用 Netty 的频道池映射作为 Jax RS 客户端的 ConnectorProvider
- javascript - 如何记录只有原始值的对象?