【发布时间】:2019-04-23 01:19:25
【问题描述】:
我正在尝试编写一个程序,将文本文件中的数据拆分为并行数组,然后将每个数组的内容写入文本框中。文本文件是这样的:
标题 1、类型 1、导演 1、
Title2, Genre2, Director2,
Title3, Genre3, Director3,
Imports System.IO
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim sr As New StreamReader("MovieData.txt")
Dim movieTitles(9), genre(9), directors(9), itemsRead() As String
Dim i As Integer = 0
Do Until sr.Peek = -1
itemsRead = sr.ReadLine.Split(",")
movieTitles(i) = itemsRead(0)
genre(i) = itemsRead(1)
directors(i) = itemsRead(2)
TextBox1.Text = movieTitles(i).PadRight(20) & genre(i).PadRight(20) & directors(i)
i += 1
Loop
sr.Dispose()
End Sub
End Class
当我点击按钮时,文本框只显示:
Title3 Genre3 Director3
我该如何解决这个问题?
【问题讨论】:
-
当你设置
TextBox1.Text = something。您删除以前的文本。请改用TextBox.AppendText(),将Environment.Newline添加到您添加的字符串中。 -
另外,可能使用
List(Of String)代替数组。您不需要知道文件中的行数,您可以在需要时将项目添加到列表中。另请参阅File.ReadAllLines(),这可能会有所帮助。如果您对它更满意,它会返回一个字符串数组(或者如果您愿意,它会返回一个列表)。它一次性读取文件中的所有文本行。
标签: vb.net