0
У меня есть следующий код. Я читаю из текстового файла, создавая список записей (моя структура). Далее мне нужно, чтобы получить все объекты записи из списка, где имя команды равно имя команды из текстового поля на формеList.FindAll не возвращает результирующий набор
Public Class Form1
Structure Record
Sub New(ByVal arr As String())
Me.team = arr(0)
Me.player = arr(1)
Me.bats = CInt(arr(2))
Me.hits = CInt(arr(3))
End Sub
Dim team As String
Dim player As String
Dim bats As Integer
Dim hits As Integer
End Structure
Private Sub btnDisplay_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDisplay.Click
Dim team As String = txtTeam.Text
Dim records As New List(Of Record)
records.AddRange(
From line In IO.File.ReadAllLines("Baseball.txt")
Select New Record(line.Split(","c))
)
records = records.FindAll(Function(record) record.team.Equals(team))
Dim a As Integer = 1
a += 1
End Sub
End Class
Проблема в том, что я получил 0 записей после
records = records.FindAll(Function(record) record.team.Equals(team))
Любые предложения?
P.S: Это для точки останова
Dim a As Integer = 1
a += 1
Вы уверены, что есть запись с соответствующим текстом команды, у вас может быть проблема сравнения случаев с одной в нижнем регистре, а другая в верхнем или частичном –
. Чтобы добавить к чему BobVale сказал - конвертируйте это в цикл foreach и посмотреть, получите ли вы ожидаемые результаты. Возможно, вам придется подумать, что 'команда' должна быть проверена как текст с учетом регистра и/или пробел. – bland
Нет проблем с регистрозависимым текстом – pydevd