змінити назву масиву під час виконання

У моєму сценарії я отримую всі дані з веб-таблиці та зберігаю їх у масиві. Кожен масив містить дані одного рядка.

Моя проблема тут полягає в тому, що я хочу створити новий масив з новим іменем для кожної ітерації. Так що дані в першому рядку зберігаються в одному масиві. Коли з'являються дані другого рядка, слід створити новий масив, і дані повинні зберігатися у новостворюваному масиві.

Я використовую мову c #.

Ось мій код

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

               IList 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++;
                }
          }
1
Я все ще настійно думаю, що він повинен використовувати клас даних, який тримає по одному ряду кожен
додано Автор Jonesopolis, джерело
Не могли б ви використовувати 2D-масив - ви не можете динамічно змінювати назву масиву, але ви можете призначити дані новому регіону пам'яті, що має той самий ефект. тому myarray [0] [] - це з першої ітерації, myarray [1] [] з другого тощо.
додано Автор Floris, джерело
Не могли б ви використовувати 2D-масив - ви не можете динамічно змінювати назву масиву, але ви можете призначити дані новому регіону пам'яті, що має той самий ефект. тому myarray [0] [] - це з першої ітерації, myarray [1] [] з другого тощо.
додано Автор Floris, джерело
Я не бачу жодного коду.
додано Автор Damien_The_Unbeliever, джерело
Можливо, ви хочете поглянути на багатовимірні масиви ?
додано Автор Leri, джерело
що ви маєте на увазі під новим ім'ям? Я думаю, що вам потрібно це масив масивів aka 2d масив.
додано Автор Osama Javed, джерело
що ви маєте на увазі під новим ім'ям? Я думаю, що вам потрібно це масив масивів aka 2d масив.
додано Автор Osama Javed, джерело

9 Відповіді

Припустимо, у вас є список масиву:

List arrayList = new List();

і у вас масив

int[] intArray = new int[5];

ніж ви можете помістити ці масиви у ваш список.

arrayList.Add(intArray);
1
додано

Припустимо, у вас є список масиву:

List arrayList = new List();

і у вас масив

int[] intArray = new int[5];

ніж ви можете помістити ці масиви у ваш список.

arrayList.Add(intArray);
1
додано

Якщо ви знаєте, які рядки будуть, просто створіть клас, який містить дані рядка, а потім створіть клас, і натисніть його в масив при кожному отриманні рядка

0
додано

Ви повинні використовувати багатомірний масив. Заявка масиву буде виглядати приблизно так:

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

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

Якщо ви не знаєте, наскільки велика вона буде, ніж ви, мабуть, хочете список масивів. Припускаючи 10 стовпців:

List table = new List(); var row = new object[10]; // populate row array here... table.Add(row); 
0
додано

Ви повинні використовувати багатомірний масив. Заявка масиву буде виглядати приблизно так:

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

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

Якщо ви не знаєте, наскільки велика вона буде, ніж ви, мабуть, хочете список масивів. Припускаючи 10 стовпців:

List table = new List(); var row = new object[10]; // populate row array here... table.Add(row); 
0
додано

Якщо ви дійсно хочете назвати свої масиви, використовуйте словник:

var arrays = new Dictionary();

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

Ви можете отримати доступ до названого масиву, подібного до цього

int[] x = arrays["a name"];
0
додано

Якщо ви дійсно хочете назвати свої масиви, використовуйте словник:

var arrays = new Dictionary();

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

Ви можете отримати доступ до названого масиву, подібного до цього

int[] x = arrays["a name"];
0
додано

Я думаю, вам потрібно використовувати іншу структуру даних, як-от 2D масив або хешбайт/словник

0
додано

Я думаю, вам потрібно використовувати іншу структуру даних, як-от 2D масив або хешбайт/словник

0
додано
var chat = new Chat();
var chat = new Chat();
642 учасників

Обсуждение вопросов по C# / .NET / .NET Core / .NET Standard / Azure Сообщества-организаторы: — @itkpi — @dncuug