0

我不断收到“索引超出数组范围”。当我尝试将项目添加到 listView 时。

我究竟做错了什么?

这是我的代码:

 string[] h = getBetweenAll(thepage, "\" target=\"_blank\">", "</a>");
         foreach (string s in h)
         listViewClickbank.Items.Add(new ListViewItem(""));

        foreach (ListViewItem i in listViewClickbank.Items)
         {
           if (i.SubItems[0].Text == "(view mobile)")
          {
                i.Remove();
           }
       }

      foreach (ListViewItem i in listViewClickbank.Items)
     {
             if (i.SubItems[0].Text.Contains("recordTitle"))
           {
             i.Remove();
          }
      }

      string[] u = getBetweenAll(thepage, "<div class=\"description\">", "</div>");
      for (int i = 0; i < h.Length && i < listViewClickbank.Items.Count; i++)
      {
           listViewClickbank.Items[i].SubItems.Add(u[i]);
      }

错误出现在这一行:

listViewClickbank.Items[i].SubItems.Add(u[i]);
4

1 回答 1

1

请注意,您使用的是h.Length,而不是循环u.Length中的条件。for您正在添加 的元素u,而不是h并且很可能u.Length小于,h.Length并且当您尝试访问 u[i] 时会出现异常。它应该是 :

string[] u = getBetweenAll(thepage, "<div class=\"description\">", "</div>");
for (int i = 0; i < u.Length && i < listViewClickbank.Items.Count; i++)
{
     listViewClickbank.Items[i].SubItems.Add(u[i]);
}
于 2012-11-17T17:55:41.087 回答