C#:索引超出了ListView数组的边界

C#:索引超出了ListView数组的边界,c#,arrays,forms,listview,C#,Arrays,Forms,Listview,当我尝试向listView添加项时,我不断得到“索引超出了数组的界限” 我做错了什么 这是我的密码: string[] h = getBetweenAll(thepage, "\" target=\"_blank\">", "</a>"); foreach (string s in h) listViewClickbank.Items.Add(new ListViewItem("")); foreach (ListView

当我尝试向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]);
      }

请注意,您使用的是
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]);
}
string[]u=getBetweenAll(页面“,”);
对于(int i=0;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]);
}