在VB2010中,怎样可以随机读取文本文件中的一行?
例如:在D:\123.txt中,有如下几行:dsfionklioshfaoogafoahfdsknjafiuh之后,用一段代码随机读取一行,例如ogafoahf,将他显示...
例如:在D:\123.txt中,有如下几行:
dsfionkl
ioshfao
ogafoahf
dsknjafiuh
之后,用一段代码随机读取一行,例如ogafoahf,将他显示在Label1中。每次运行这段代码,Label1中显示的字符都不一样。 展开
dsfionkl
ioshfao
ogafoahf
dsknjafiuh
之后,用一段代码随机读取一行,例如ogafoahf,将他显示在Label1中。每次运行这段代码,Label1中显示的字符都不一样。 展开
2个回答
展开全部
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim str() As String = My.Computer.FileSystem.ReadAllText("D:\123.txt").Split(vbCrLf) '文件读到数组中----自己改成对应的文件
Randomize()
Dim i_rdz As Integer = Int((str.Length - 0 + 1) * Rnd() + 0) '产生0到数组长度减1的随机数
Label1.Text = str(i_rdz) '显示出来
End Sub
Dim str() As String = My.Computer.FileSystem.ReadAllText("D:\123.txt").Split(vbCrLf) '文件读到数组中----自己改成对应的文件
Randomize()
Dim i_rdz As Integer = Int((str.Length - 0 + 1) * Rnd() + 0) '产生0到数组长度减1的随机数
Label1.Text = str(i_rdz) '显示出来
End Sub
追问
不行啊。Label1.Text = str(i_rdz)提示索引超出了数组界限。
追答
Dim i_rdz As Integer = Int(str.Length*Rnd())
展开全部
添加一个listbox控件,可以设置为隐藏
Private Sub Command1_Click()
On Error Resume Next '出错处理
List1.Clear
Open "c:\1.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, s
If Len(s) > 0 Then List1.AddItem s '防止添加空白行
Loop
Close #1
Randomize
Label1.Caption = List1.List(Int((List1.ListCount) * Rnd))
End Sub
Private Sub Command1_Click()
On Error Resume Next '出错处理
List1.Clear
Open "c:\1.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, s
If Len(s) > 0 Then List1.AddItem s '防止添加空白行
Loop
Close #1
Randomize
Label1.Caption = List1.List(Int((List1.ListCount) * Rnd))
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询