2016-11-22 4 views
0

私はLumenworksのCSV Readerを使用していますが、その偉大ですが、CurrentRecordIndexの値が設定されているので、ファイルの最後に達したときにもう一度読む必要があります。現在のレコードが最後の項目に設定されているためです。それをリセットする方法はありますか?Lumenworks CSV Readerの起動時に列挙子をリセットする

 List<object> output = new List<object>(); 

     var col = this.InternalCsv.GetFieldIndex(header); 
     var e = this.InternalCsv.GetEnumerator(); 
     while (e.MoveNext()) 
     { 
      output.Add(e.Current[col]); 
     } 

答えて

2

はあなたがコレクションの最初の 要素の前にあるその初期位置に列挙子を設定します

IEnumerator.Reset

e.Reset(); 
を試してみました。

また、列挙子をもう一度取得してください。

var secondEnumerator = this.InternalCsv.GetEnumerator(); 

また、あなたがList<object> output = new List<object>();にデータを持っている場合、リスト内のデータを使用して、もう一度それを列挙する必要がある理由!

+0

私は必要なのは、同じ関数を別の 'col'値で呼び出す機能です。何が起こるかは、内部的にCsvReaderが保存されていて、それを反復すると、現在のインデックスは最後のアイテムに設定されます。その後、同じメソッドをもう一度呼び出すと、列挙子をリセットする必要があります。または、私は乾杯しています。 :-)あなたの解決策は良いです。ありがとうございました。 – konrad

+0

@konrad大歓迎ですが、あなたのお手伝いをした場合、正しい答えとしてマークしてください。 – mybirthname

関連する問題