在Visual Basic中只阅读文本文件中的单词



我正在为我的Visual Basic类开发一个项目,在该项目中,我应该读取一个文件,并在列表框中显示信息(员工姓名和工资)。

我一共有4张表格。第一个表单实际上没有显示任何内容,它只是具有打开文件、选择其他3个表单中的任何一个并退出表单的菜单项。在第二种形式(姓名)中,只有从文件中读取的员工姓名显示在列表框中。在第三种形式(工资)中,列表框中只显示从文件中读取的员工工资。第四个表单与第二个表单基本相同,显示从文件中读取的员工姓名。

问题是,我不知道如何做到这一点,以便在列表框中只显示文件的某些部分(姓名和薪水)。此外,在第四种形式中,我必须要求用户输入他们希望为所选员工计算工资的月数,然后将他们的工资乘以用户输入的月数。我知道该怎么做,除了如何拿到薪水。例如,我认为它应该是这样的:

lbl总计。Text=dblSalary*intMonths

但我不知道如何在dblSalary变量中只存储所选员工的工资?

这是我到目前为止写的代码,但当用户从主窗体单击file->open时,它只是打开一个打开的文件对话框

Public Class Main
    Private Sub OpenFileToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles OpenFileToolStripMenuItem.Click
        Dim open As New OpenFileDialog
        open.Filter = "text files |*.txt|All Files|*.*"
        open.InitialDirectory =  Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)
    End Sub
End Class

这是我的文本文件名为employees.txt

Steve McGarret  
1500.00
Danny Williams
1300.00
Matthew Casey
1700.00
Kelly Severide
1750.00

我希望这是清楚的,如果不让我知道,我可以尝试澄清。

提前谢谢。

由于这是家庭作业,我不会发布具体的解决方案,但我会发布我将如何做到这一点的想法…

我会:

  1. 创建2个新的List变量-Dim Names as new List(Of String)&Dim Salaries as new List(Of Double)
  2. 逐行读取文本文件,给定文件格式,每条偶数行将添加到Salaries列表,每条奇数行将添加至Names列表
  3. 将每个列表设置为相应列表框的DataSource

希望这能帮助你,至少能让你知道如何继续。

更新:

考虑到你的评论说你想把数据存储在一个类中,你可以按照以下方式做更多的事情:

  1. 用2个属性和任何其他需要的方法创建类——称之为EmployeeData,比如
  2. 创建List Of(EmployeeData)
  3. 在文本文件中一次循环2行(意思是读第一行,捕获名称,读下一行,读工资,然后循环)
  4. 在每个循环中,一旦您捕获了数据,就向您的列表中添加一个新的EmployeeData,其中包含2条捕获的信息
  5. 编写一小段代码,从EmployeeData列表中仅提取工资或姓名,作为一个新列表,您可以使用该列表绑定到作为数据源的列表框

希望这是有道理的。

相关内容

  • 没有找到相关文章

最新更新