0

TextFieldParser に読み込まれた csv ファイルがあります。データ行を DataTable に配置する前に、csv にないいくつかのフィールドを追加したいと考えています。

この行はすべての csv データをテーブルに書き込みます ok -

        tempTable.Rows.Add(parser.ReadFields())

私がこのようなことをしたら -

        tempTable.Rows.Add(parser.ReadFields(), stationID, sMaxSpeedDecimal, sqlFormattedDate)

Row.Add は、すべてのパーサー データを 1 つのフィールドとして扱い、新しい列を追加するようです。基本的に、パーサー データはデータベースから失われます。tempTable.Rows.Add にすべてのパーサー データと新しい列データが 1 回の書き込みで含まれるように、列を追加するにはどうすればよいですか?

4

1 に答える 1

2

すべてのフィールド値を含む 1 つの配列を渡すか、すべてのフィールド値を個別に渡す必要があります。複数の引数を渡すため、後者であると見なされ、配列は 1 つのフィールド値として扱われます。配列を分割して、各フィールドを個別に渡す必要があります。

Dim fields = parser.ReadFields()

tempTable.Rows.Add(fields(0), fields(1), stationID, sMaxSpeedDecimal, sqlFormattedDate)

または、追加のフィールド値を元の配列と組み合わせて、新しい配列を作成します。

Dim fields = parser.ReadFields().Concat({stationID, sMaxSpeedDecimal, sqlFormattedDate})

tempTable.Rows.Add(fields)
于 2014-06-02T04:22:40.960 に答える