从文件中读取并将其存储在类(对象?)visual basic中

时间:2017-05-27 12:17:14

标签: vb.net

我是Visual Basic的新手。

我试图建立一个学生标记表,所以我想从一个包含学生姓名,学生证和他们的分数的文本文件中读取。我知道如何从文本中读取整个文本,但我需要将每个部分存储到学生类

例如,文本文件有

1 Tom 90

2 Jay 95

3 Ben 78

我如何阅读第一行,将1存储到一个变量中,将Tom存储到另一个变量等,然后再次读取第二行,依此类推?

以下是从我在互联网上找到的文本文件中读取的代码。

 Dim fileReader As System.IO.StreamReader
fileReader = My.Computer.FileSystem.OpenTextFileReader("C:\\testfile.txt")
Dim stringReader As String
stringReader = fileReader.ReadLine()
MsgBox("The first line of the file is " & stringReader)

2 个答案:

答案 0 :(得分:0)

您的问题是您需要一个分隔符,例如逗号。您还可以将数据序列化为XML文件。您现在可以做的最好的事情是使用空格作为分隔符,但这是一个严格的解决方案,因为这意味着您不能在数据中使用空格。最佳解决方案是将信息存储到数据库中。

答案 1 :(得分:-1)

@Teach Me How To Sell 所述,您的数据线格式不正确。使用以下代码片段仅适用于单个单词。尝试插入另一个分隔符。

获取一行的每个part并存储到您需要的变量。

Imports System.IO

Public Class Form1
  Private Sub btnReadTextFile_Click(sender As Object, e As EventArgs) Handles btnReadTextFile.Click
    Dim i As Integer = 0
    ' Loop over lines in file.
    For Each line As String In File.ReadLines("D:\_working\foobar-students.txt")
      ' Display the line.
      MessageBox.Show(line)
      ' Split the line by delimiter
      Dim parts As String() = line.Split(" ")
      ' Loop over each string received.
      Dim part As String
      For Each part In parts
        ' Display to console.
        Console.WriteLine("{0}:{1}", i, part)
        ' Add code to store each part for your needs
        ' ...
      Next
      i += 1
    Next
  End Sub
End Class