0

我正在使用下面的代码,但它给了我数组的前 10 行。我不知道如何获取数组的最后10 行。

        Dim t_low As String

        Dim l_low() As String = low.Split(vbCrLf.ToCharArray, StringSplitOptions.RemoveEmptyEntries)


        For c As Integer = 0 To l_low.Length - 1
            If c <= 10 - 1 Then
                t_low = t_low & l_low(c) & ","
            End If
        Next
        MsgBox(t_low)
4

4 回答 4

1
    Dim t_low As String

    Dim l_low() As String = low.Split(vbCrLf.ToCharArray, StringSplitOptions.RemoveEmptyEntries)

    Array.Reverse(l_low)

    For c As Integer = 0 To 9            
        t_low = t_low & l_low(c) & ","            
    Next
    MsgBox(t_low)
于 2013-10-09T11:08:47.693 回答
0

我有一个包含一些项目的数组(测试)。此代码连接第一个和最后 10 个项目,用逗号分隔。

    Dim s As New System.Text.StringBuilder
    If test.Length >= 10 Then
        'first 10
        For c As Integer = 0 To 9
            s.Append(test(c) & ",")
        Next
        'last 10
        For c As Integer = test.Length - 10 To test.Length - 1
            s.Append(test(c) & ",")
        Next
        s.Remove(s.Length - 1, 1) 'remove trailing comma
        Debug.WriteLine(s.ToString)
    End If
于 2013-10-09T13:32:13.993 回答
0

尝试这个:

Dim t_low_1 As String = ""
Dim t_low_2 As String = ""

Dim l_low() As String = low.Split(vbCrLf.ToCharArray, StringSplitOptions.RemoveEmptyEntries)

For i As Integer = l_low.Length - 1 To l_low.Length - 10 Step -1
    t_low_1 = t_low_1 & l_low(i) & IIf(i <> l_low.Length - 10, ",", "")
    t_low_2 = l_low(i) & IIf(i <> l_low.Length - 1, ",", "") & t_low_2
Next i

MsgBox(t_low_1)
MsgBox(t_low_2)

我使用了两个变量 (t_low_1t_low_2),因为我不明白您想要显示结果的顺序。

于 2013-10-09T13:40:51.003 回答
0

使用 LINQ:

Dim l_low() As String = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"}
Dim l_low2() As String = l_low.Skip(Math.Max(0, l_low.Length - 10)).Take(10).ToArray

然后,您可以使用String.Joinl_low2将 的元素连接在一起,用逗号分隔。

于 2013-10-09T14:54:05.793 回答