来自文本文件的可视基本随机行

时间:2016-09-08 12:21:43

标签: vb.net visual-studio-2012 generator

我需要创建一个描述生成器。

我有3个文本文件,在这些文件的每一行中,我都有一段描述。

我的程序应该能够读取所有这3个文件,然后从每个文件中选择一个随机行并将它们组合起来:

Result = RandomLineFile1 + RandomLineFile2 + RandomLineFile3

我已经在这些描述中实现了“变量”,称为:BRAND和MODEL。

我的程序现在应该能够在TextBox3.Text中找到这些变量,并将其替换为品牌的TextBox1.Text和模型的TextBox2.Text

就是这样。

这样的事情:

readfile1(getrandomline)
add to TextBox3.Text
readfile2(getrandomline)
add to TextBox3.Text
readfile2(getrandomline)
add to TextBox3.Text
Find BRAND
Replace with TextBox1.Text
Find MODEL
Replace with TextBox2.Text

你能帮我吗?

1 个答案:

答案 0 :(得分:0)

FloatingKiwi,对于我在stackoverflow上的第一个问题上有这样一个“好”的攻击性答案感到很难过。 我只是要求任何帮助,而不是自己的代码。

无论如何我做了,也许会帮助其他人:

On Error Resume Next
        TextBox1.Clear()
        Dim ioFile As New System.IO.StreamReader("C:\Descriere\a.txt")
        Dim lines As New List(Of String)
        Dim rnd As New Random()
        Dim line As Integer
        While ioFile.Peek <> -1
            lines.Add(ioFile.ReadLine())
        End While
        line = rnd.Next(lines.Count + 1)
        TextBox1.AppendText(lines(line).Trim())
        ioFile.Close()
        ioFile.Dispose()
        Dim ioFile2 As New System.IO.StreamReader("C:\Descriere\core.txt")
        Dim lines2 As New List(Of String)
        Dim rnd2 As New Random()
        Dim line2 As Integer
        While ioFile2.Peek <> -1
            lines2.Add(ioFile2.ReadLine())
        End While
        line2 = rnd2.Next(lines2.Count + 1)
        TextBox1.AppendText(lines2(line2).Trim())
        ioFile2.Close()
        ioFile2.Dispose()
        Dim ioFile3 As New System.IO.StreamReader("C:\Descriere\x.txt")
        Dim lines3 As New List(Of String)
        Dim rnd3 As New Random()
        Dim line3 As Integer
        While ioFile3.Peek <> -1
            lines3.Add(ioFile3.ReadLine())
        End While
        line3 = rnd3.Next(lines3.Count + 1)
        TextBox1.AppendText(lines3(line3).Trim())
        ioFile3.Close()
        ioFile3.Dispose()
        TextBox1.Text = Replace(TextBox1.Text, "BRAND", TextBox2.Text)
        TextBox1.Text = Replace(TextBox1.Text, "MODEL", TextBox3.Text)
        Dim count As Integer = 0
        count = TextBox1.Text.Split(" ").Length - 1
        Label5.Text = "Caractere:" & Len(TextBox1.Text)