我有一个文本文件,并带有一些行示例
我想遍历每一行,直到创建格式行+1所有单词,当然,最大值必须可调
感谢所有帮助
我的代码
Sub homework()
' Dim words(5) As String
Dim words As String() = File.ReadLines("test.txt")
Dim i As Integer
Dim outerLoop As Integer
Dim innerLoop As Integer
For i = 0 To words.Length ' i dont know how to set file line length
words(i) = words(i) & i + 1
Next i
For outerLoop = 0 To UBound(words)
For innerLoop = 0 To UBound(words)
If outerLoop = innerLoop Then
ListBox1.Items.Add(words(outerLoop) & "-" & words(innerLoop))
End If
Next
Next outerLoop
End Sub
输出后
这里的问题不是读取文本文件中的所有行,而是仅处理最后一行。
答案 0 :(得分:1)
不需要第一个循环,并如下修改第二个循环:
Sub homework()
' Dim words(5) As String
Dim words As String() = File.ReadLines("test.txt")
Dim i As Integer
Dim outerLoop As Integer
Dim innerLoop As Integer
' This Loop is not required.
'For i = 0 To words.Length
' words(i) = words(i) & i + 1
'Next i
For outerLoop = 0 To UBound(words)
For innerLoop = 1 To MaxValue
Dim str as string
str = words(outerloop) & "-" & innerLoop
ListBox1.Items.Add(str & "-" & str)
Next
Next outerLoop
End Sub
答案 1 :(得分:1)
File.ReadLines返回String的IEnumerable,而File.ReadAllLines返回旧的String数组。他们的比赛规则略有不同。现在,您可能会更熟悉数组。
在外部循环中使用For Each循环要容易一些,因为您不必担心索引出或范围或获取UBound(words)转换为word.net中的GetUpperBound(0)。
对于内部循环,我们可以从1开始,然后转到传递给您的方法的值。
products.sellStatus = "Sold"