我需要导入额外列表(酱料来与一顿饭)和他们各自的价格。用老师的一些代码,我可以读取文件,将额外的名字和价格放入一个列表中,然后显示它以显示它已经工作。现在的问题是,当我必须按字母顺序排列额外字符时,才能对其应用二进制搜索。我用.sort和OrderBy等尝试了一切,但没有任何工作。与数据将两列数据读入一个列表中,按字母顺序排序
鹰嘴豆泥,0.75
辣椒,0.50
Tabouli,1.25
Tzatziki我的外部文本文件,0.50
额外
Public Class extra
Public Property Name As String
Public Property Price As Decimal
End Class
公共类
此代码导入数据,并将其放入一个列表
Dim allExtras = From line In System.IO.File.ReadLines("C:\Users\ExtrasList.txt")
Let Columns = line.Split(","c)
Where Columns.Length = 2
Let Price = Decimal.Parse(Columns(1).Trim())
Let Name = Columns(0).Trim()
Select New extra With {.Name = Name, .Price = Price}
Dim extraList As List(Of extra) = allExtras.ToList()
显示列表
Console.WriteLine()
Console.WriteLine("Extra Name" & vbTab & "Price")
Console.WriteLine("-----------" & vbTab & "-----")
For Each extra In extraList
Console.WriteLine(extra.Name & vbTab & vbTab & extra.Price)
Next
我只需要得到一个单独的文件中的演员和他们的价格到一个数组或列表,可以按字母顺序排序,以便用户可以搜索以查看他们想要的额外内容是否存在。我还需要能够访问该列表,以便用户可以选择并额外购买,然后将所需价格添加到总价中。任何帮助将不胜感激,因为这部分是阻止我进一步深入。我不介意如果有人能够帮助我用现有的代码对列表进行排序,或者让我更有效地将文件中的数据读入列表,我只需要某种解决方案。
实例在你的代码没有简化您的阅读方法试图排序或'OrderBy'。 'OrderBy'应该可以工作。如果您尝试使用'OrderBy',那么您的意思是“它不工作”? – Fabio