在运行时更改数组的名称

时间:2013-06-24 14:07:09

标签: c#

在我的场景中,我从Web表中获取所有数据并将其存储在数组中。每个数组都包含一行数据。

我的问题是,我想为每次迭代创建一个新名称的新数组。这样第一行中的数据就存储在一个数组中。获取第二行数据时,应创建一个New数组,并且数据必须存储在新创建的数组中。

我正在使用c#语言。

这是我的代码

        IWebElement table = _Browser.FindElementById("", "gview_jqGrid");
        IList<IWebElement> rowCollections = table.FindElements(By.TagName("tr"));
        int RowCnt = rowCollections.Count;
        String[] DataArray = new String[RowCnt];
        foreach (IWebElement row in rowCollections)
        {

               IList<IWebElement> colCollection = row.FindElements(By.TagName("td"));
                foreach (IWebElement col in colCollection)
                {
                    String Data = col.Text;
                    // ------ Here I want a array to store data. A new array for each Iteration
                    j++;
                }
          }

5 个答案:

答案 0 :(得分:1)

假设您有一个数组列表:

List<int[]> arrayList = new List<int[]>();

你有一个数组

int[] intArray = new int[5];

比你可以将这些数组放入你的列表中。

arrayList.Add(intArray);

答案 1 :(得分:0)

如果您知道行将是什么,只需创建一个包含行数据的类,然后创建一个类,并在每次检索行时将其推送到数组中

答案 2 :(得分:0)

我认为你需要使用不同的数据结构,比如2D数组或哈希表/字典

答案 3 :(得分:0)

您应该使用多维数组。数组声明看起来像这样:

object[,] table = new object[10, 10];

请参阅:http://msdn.microsoft.com/en-us/library/2yd9wwz4(v=vs.110).aspx

如果你不知道它会有多大,你可能想要一个数组列表。假设有10列:

List<object[]> table = new List<object[]>();
var row = new object[10];
// populate row array here...
table.Add(row);

答案 4 :(得分:0)

如果您真的想为数组命名,请使用字典:

var arrays = new Dictionary<string, int[]>();

while (rows available) {
    var a = new int[10];
    FillArrayFromRow(a, row);
    string name = GetNameFrom(row);
    arrays.Add(name, a);
}

您可以像这样访问命名数组

int[] x = arrays["a name"];