2016-08-17 16 views
0


私は、一度に1行ずつ読み込み、.netオブジェクト(1行目のヘッダ)を埋め込む必要があるCSVファイルを持っています。
今、私は ReadLine 経由でそれを行うことができますし、オブジェクトのプロパティを割り当てることができますが、私はそれを行うより短い方法があるのだろうかと思っていた。
私はLINQを使ってみましたが、すべての行を読み取っています
File.ReadAllLines("C:\\....csv").Skip(1)...
アドバイスをしてください。ありがとう。CSVを1行ずつ読み込み、.netオブジェクトを埋め込む

static void Main(string[] args) 
{ 
    var enumerator = File.ReadLines("foo.csv").GetEnumerator(); 

    enumerator.MoveNext(); 
    string headerLine = enumerator.Current; // null if file empty 

    while (enumerator.MoveNext()) 
    { 
    string dataLine = enumerator.Current; 
    } 
} 

や見出しの後にあなたがIEnumerableを<に列挙子を変換することができます:

+0

このURLを参照してくださいhttp://stackoverflow.com/questions/1941392/are-there-any-csv-readers-writer-libraries-in-c –

+0

「ReadAllLines」を['ReadLines'](https: /msdn.microsoft.com/en-us/library/dd383503(v=vs.110).aspx) –

答えて

1

うんイワンはそれは、あなたが古い学校の列挙子を使用することができますつのアクセスにヘッダとデータを読み取るためのReadLines()

を使用すると言います>バック:

static IEnumerable<T> AsEnumerable<T>(IEnumerator<T> enumerator) 
{ 
    while (enumerator.MoveNext()) yield return enumerator.Current; 
} 

var query = AsEnumerable(enumerator);

でwhileループを置き換えます
関連する問題