3

Dictionary 配列にある項目の数を取得したい:

ここに画像の説明を入力してください

しかし、次のようにすると、 4が得られないようです。

Dim showNumber As Integer = tmpShows.Length

私が持っている辞書のコードは次のとおりです。

Dim all = New Dictionary(Of String, Object)()
Dim info = New Dictionary(Of String, Object)()

info!Station = .SelectSingleNode(".//span[@class='channel']").ChildNodes(3).ChildNodes(2).InnerText
info!Shows = From tag In .SelectNodes(".//a[@class='thickbox']")
             Select New With {.Show = tag.Attributes("title").Value, .Link = tag.Attributes("href").Value}

Dim tmpShows = all.Item(info!Station)
Dim showNumber As Integer = tmpShows.Length

探している4の長さを取得するために何が欠けていますか?

ここに画像の説明を入力してください

ここに画像の説明を入力してください

ここに画像の説明を入力してください

ここに画像の説明を入力してください

    Dim all = New Dictionary(Of String, Object)()

    For Each channel In doc.DocumentNode.SelectNodes(".//div[@class='channel_row']")
        Dim info = New Dictionary(Of String, Object)()
        skipFirstShow = False

        With channel
            info!Logo = .SelectSingleNode(".//img").Attributes("src").Value
            info!Channel = .SelectSingleNode(".//span[@class='channel']").ChildNodes(3).ChildNodes(0).InnerText
            info!Station = .SelectSingleNode(".//span[@class='channel']").ChildNodes(3).ChildNodes(2).InnerText

            Dim style As String = .SelectSingleNode(".//span[2]").Attributes("style").Value

            If InStr(style.ToLower, "width: 0px;") <> 0 Then skipFirstShow = True

            info!Shows = From tag In .SelectNodes(".//a[@class='thickbox']")
                         Select New With {.Show = tag.Attributes("title").Value, .Link = tag.Attributes("href").Value}
            'Select New With {.Show = tag.Attributes("title").Value, .Link = tag.Attributes("href").Value}
        End With

        all.Add(info!Station, info.Item("Shows"))
        theLogoURL(theCount) = "https://example.org" & Trim(info.Item("Logo"))
        theChannelNum(theCount) = Trim(info.Item("Channel"))
        theStationCallLetters(theCount) = Trim(info.Item("Station"))

        Dim Shows As String = ""
        Dim ShowsDetail As String = ""
        Dim tmpShows = all.Item(info!Station)
4

3 に答える 3

7

lengthの代わりにCountを使用します。

例:

Dim showNumber As Integer = tmpShows.Count
于 2012-11-11T05:15:50.223 に答える
0

次のように宣言を変更してみてください。

Dim all as New Dictionary(Of String, Object)()

それ以外の:

Dim all = New Dictionary(Of String, Object)()

そして、、、などを呼び出しCountますLength

また、ループを使用して変数ForEachのカウントを取得してみてください。all

于 2012-11-14T16:39:42.523 に答える
0

カウントを取得するためにこれを行いました...

 Dim intXShows As Integer = 0

 For Each item In tmpShows
    intXShows += 1
 Next
于 2012-11-12T01:47:41.083 に答える