Vb.net 在For语句中增加变量

Vb.net 在For语句中增加变量,vb.net,Vb.net,我已经将这部分代码转换为visual basic项目 Dim fileReader1 = My.Computer.FileSystem.ReadAllText(openFileDialog1.FileName) Dim Part1A = "<b id=""Blahblah"">" Dim Part1B = "</b>" Dim fileSplit1 = fileReader1.Split(New String

我已经将这部分代码转换为visual basic项目

        Dim fileReader1 = My.Computer.FileSystem.ReadAllText(openFileDialog1.FileName)
        Dim Part1A = "<b id=""Blahblah"">"
        Dim Part1B = "</b>"
        Dim fileSplit1 = fileReader1.Split(New String() {Part1A}, StringSplitOptions.None)
        fileReader1 = fileSplit1.Last
        fileSplit1 = fileReader1.Split(New String() {Part1B}, StringSplitOptions.None)
        fileReader1 = fileSplit1.First

…但我有错误!你知道语法应该是怎样的吗?

不幸的是,变量不喜欢这样命名。但是,您可以使用阵列:

Dim fileReader(10) as String

For i As Integer = 1 To 10
    fileReader(i) = My.Computer.FileSystem.ReadAllText(openFileDialog1.FileName)
    Dim Part1A = "<b id=""Blahblah"">"
    Dim Part1B = "</b>"
    Dim fileSplit1 = fileReader(i).Split(New String() {Part1A}, StringSplitOptions.None)
    fileReader(i) = fileSplit1.Last
    fileSplit1 = fileReader(i).Split(New String() {Part1B}, StringSplitOptions.None)
    fileReader(i) = fileSplit1.First
Next
Dim文件读取器(10)作为字符串
对于i,作为整数=1到10
fileReader(i)=My.Computer.FileSystem.ReadAllText(openFileDialog1.FileName)
尺寸部分1A=“”
Dim Part1B=“”
Dim fileSplit1=fileReader(i).Split(新字符串(){Part1A},StringSplitOptions.None)
fileReader(i)=fileSplit1.Last
fileSplit1=fileReader(i).Split(新字符串(){Part1B},StringSplitOptions.None)
fileReader(i)=fileSplit1.First
下一个
剩下的代码就可以了,只需将fileReader1的每个实例都更改为fileReader(i)

如果Part1A和Part1B必须对每个i具有唯一的值,则可以使用相同的方式创建数组:

Dim fileReader(10) as String
Dim PartA(10) as String
Dim PartB(10) as String

For i As Integer = 1 To 10
    fileReader(i) = My.Computer.FileSystem.ReadAllText(openFileDialog1.FileName)
    Dim PartA(i) = "<b id=""Blahblah"">"
    Dim PartB(i) = "</b>"
    Dim fileSplit1 = fileReader(i).Split(New String() {PartA(i)}, StringSplitOptions.None)
    fileReader(i) = fileSplit1.Last
    fileSplit1 = fileReader(i).Split(New String() {PartB(i)}, StringSplitOptions.None)
    fileReader(i) = fileSplit1.First
Next
Dim文件读取器(10)作为字符串
将零件A(10)调为字符串
尺寸零件B(10)作为字符串
对于i,作为整数=1到10
fileReader(i)=My.Computer.FileSystem.ReadAllText(openFileDialog1.FileName)
第(一)部分:
尺寸零件B(i)=“
Dim fileSplit1=fileReader(i).Split(新字符串(){PartA(i)},StringSplitOptions.None)
fileReader(i)=fileSplit1.Last
fileSplit1=fileReader(i).Split(新字符串(){PartB(i)},StringSplitOptions.None)
fileReader(i)=fileSplit1.First
下一个

但是,如果PartA和PartB总是具有相同的值,那么就没有必要将它们放入数组中,正如您给出的示例中所示。如果示例保持原样,则只需将fileReader1更改为fileReader(i)。

我也可以对该部分使用相同的语法
{Part1B}
?类似这样的
{Part(i)B}
?我还需要一个例子来说明这种情况
Dim Part1A
。是的,这将以相同的方式工作,您只需要使用PartA(i)和PartB(i)。您需要将数组索引保留在变量的末尾。我将更新我的答案以显示此更改
Dim fileReader(10) as String
Dim PartA(10) as String
Dim PartB(10) as String

For i As Integer = 1 To 10
    fileReader(i) = My.Computer.FileSystem.ReadAllText(openFileDialog1.FileName)
    Dim PartA(i) = "<b id=""Blahblah"">"
    Dim PartB(i) = "</b>"
    Dim fileSplit1 = fileReader(i).Split(New String() {PartA(i)}, StringSplitOptions.None)
    fileReader(i) = fileSplit1.Last
    fileSplit1 = fileReader(i).Split(New String() {PartB(i)}, StringSplitOptions.None)
    fileReader(i) = fileSplit1.First
Next