Vb.net 从文本文件中读取下一行
我正在为一个项目做一个RPG类型的游戏,我被卡住了 基本上,这段代码在文本文件中搜索名称(结构:赔率作为名称,偶数作为级别)。然后它需要输出下一行,这是它们所在的级别。我有计数器(变量“count”)来输出写入该级别的正确文本行,但我不能使用该计数器来读取该行(使用“FileSystem.LineInput(count)”) 这是我的全部代码:Vb.net 从文本文件中读取下一行,vb.net,Vb.net,我正在为一个项目做一个RPG类型的游戏,我被卡住了 基本上,这段代码在文本文件中搜索名称(结构:赔率作为名称,偶数作为级别)。然后它需要输出下一行,这是它们所在的级别。我有计数器(变量“count”)来输出写入该级别的正确文本行,但我不能使用该计数器来读取该行(使用“FileSystem.LineInput(count)”) 这是我的全部代码: Sub LoadGame() Dim filename, filepath, searchitem, question, read As St
Sub LoadGame()
Dim filename, filepath, searchitem, question, read As String
Dim found As Boolean
Dim count As Integer = 1
filename = "save.txt"
filepath = CurDir() & "\" & filename
searchitem = name
FileOpen(1, filename, OpenMode.Input)
Do While Not EOF(1)
read = LineInput(1)
If read = searchitem Then
found = True
Exit Do
Else
found = False
End If
count = count + 1
Loop
If found = True Then
If count >= 3 Then
count = count + 1
End If
question = FileSystem.LineInput(count) ' This bit is broken
Console.WriteLine("Found save game... Loading: " & question)
Console.ReadLine()
Console.BackgroundColor = ConsoleColor.Black
Console.ForegroundColor = ConsoleColor.Red
Console.Clear()
Race(question)
Else
Console.WriteLine("No save game...")
Console.ReadLine()
End If
FileClose(1)
End Sub
我不确定是什么问题,但如果您能提供任何帮助(使用VB 2010)LineInput将读取指定文件的下一行(参数
文件号
)
您的文件具有FileNumber
1,并且文件指针指向所需的行。因此,只需
question = FileSystem.LineInput(1)
在我的建议中,您应该避免在.Net中访问这些类型的文件(每个文件号)。这只是VB6时代的旧遗物。在.Net中,您有易于使用的类,例如StreamReader。但是如果你想用老式的方法来做,至少可以使用
FreeFile
方法来定义文件号。这就是为什么数据库
更容易存储数据的原因。您能举一个文本格式的例子吗?文档的格式是:在不同的行上如果您没有正确使用LineInput,请检查规范。我建议您不要使用旧功能(CurDir、FileOpen、LineInput)。查看System.IO.File,您可以打开StreamReader并逐行读取。