-1

私のシナリオでは、Web テーブルからすべてのデータを取得し、それを配列に格納しています。各配列には、1 つの行データが保持されます。

ここでの問題は、反復ごとに新しい名前で新しい配列を作成したいということです。最初の行のデータが 1 つの配列に格納されるようにします。2 行目のデータがフェッチされると、新しい配列が作成され、新しく作成された配列にデータが格納される必要があります。

私は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++;
                }
          }
4

5 に答える 5

0

行がどうなるかわかっている場合は、行データを含むクラスを作成してからクラスを作成し、行を取得するたびにそれを配列にプッシュします

于 2013-06-24T14:11:34.167 に答える
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);
于 2013-06-24T14:13:34.013 に答える
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"];
于 2013-06-24T14:21:13.003 に答える