【发布时间】:2017-06-07 00:52:59
【问题描述】:
我正在尝试创建一个解决方案,该解决方案将从文本文件中提取员工信息,将其加载到数组中,然后在单击按钮时从数组中填充一系列 TextBox。
我在从数组中提取数据并将其放入文本框方面取得了一些进展。但是,填充文本框的只是单个字母,而不是完整的数据。
我已经附上了我一直在努力实现目标的代码,但我真的不知道下一步该去哪里。
文本文件中的数据供参考:
珍妮丝
琼斯
101
5.25
克里斯
奥康奈尔
102
5.35
凯伦
菲斯克
103
6.00
汤姆
温恩
104
5.75
Private Sub nextButton_Click(sender As Object, e As EventArgs) Handles nextButton.Click
Dim EmpoyeeStreamReader As New StreamReader("employee.txt")
Dim EmployeeLineInfoString As String
Dim EmployeeIndex As Decimal
EmployeeLineInfoString = EmpoyeeStreamReader.ReadLine()
Dim EmployeeArray = (EmployeeLineInfoString).ToString
EmployeeIndex = 0
Try
For EmployeeIndex = 0 To 16
firstNameTextBox.Text = EmployeeArray(EmployeeIndex)
EmployeeIndex += 1
lastNameTextBox.Text = EmployeeArray(EmployeeIndex)
EmployeeIndex += 1
employeeNumberTextBox.Text = EmployeeArray(EmployeeIndex)
EmployeeIndex += 1
payRateTextBox.Text = EmployeeArray(EmployeeIndex)
Next
For EmployeeIndex = 5 To 16
firstNameTextBox.Text = EmployeeArray(EmployeeIndex)
EmployeeIndex += 1
lastNameTextBox.Text = EmployeeArray(EmployeeIndex)
EmployeeIndex += 1
employeeNumberTextBox.Text = EmployeeArray(EmployeeIndex)
EmployeeIndex += 1
payRateTextBox.Text = EmployeeArray(EmployeeIndex)
Next
Catch ex As Exception
MessageBox.Show("All Employee's have been entered")
End Try
【问题讨论】:
-
如果您将一行读入
EmployeeLineInfoString,无论您如何称呼它,它仍然只是EmployeeArray中的一行。但由于字符串是一个字符数组,EmployeeArray(n)只是一个字母。 -
那么我将如何获得整行,而不仅仅是一封信?
-
您已经在
EmployeeLineInfoString中有整行。最好的办法是将所有行读入一个数组,然后在他们单击下一步时循环 that -
我不是用 Dim EmployeeArray = (EmployeeLineInfoString).ToString 做的吗?
-
这并不像你认为的那样。设置断点并在执行后将鼠标悬停在
EmployeeArray上 - 它不是数组。 读取所有行我的意思是一次将文件的所有行读入一个数组。巧妙地命名为FileReadAllLines就是这样做的
标签: arrays vb.net textbox streamreader