CSVHelperを使用してCSVファイルの2行目を読む方法
質問
私は2行のCSVファイルを持っています、最初のものは,
2行目は、,
2行目を読みたい、私はすべての人が csvhelperパッケージ、そうすることがわかりました。それをダウンロードしてくださいが、プロジェクトに追加するdll
はありません。
私の質問は、それを含める方法と2行目の読み方です。
Install-Package CsvHelper
を使用してインストールできることを知っていますが、このアプリケーションをサーバーに展開したいので、そのようにしてはいけません。したがって、add reference
のような方法がある場合は、
それを含める方法を知っていたら、2行目を読むことは難しくありません。 私はこのようなことをするでしょう:
- CSVファイルをロードする
- 1行目を読み、それを無視してください。
- 2行目を読み、
,
でそれを分割します。
解決
最初の行をスキップするためにTextReader.ReadLine()
を使用することができます。
using (TextReader reader = File.OpenText("filename"))
{
reader.ReadLine();
// now initialize the CsvReader
var parser = new CsvReader( reader ); // ...
}
. 他のヒント
受け入れられた答えは問題の回避策ですが、このような一般的なケースのための最初のクラスのソリューションを持っています
CsvConfiguration
クラスにはHasHeaderRecord
に設定できるプロパティtrue
があります。これにより、ライブラリはファイル内の最初の行をスキップします。
CsvConfiguration configuration = new CsvConfiguration { HasHeaderRecord = true };
using (TextReader sr = new StringReader(fileContent))
{
CsvReader reader = new CsvReader(sr, configuration);
}
.
これは documentation
CSVファイルにヘッダ行がある場合、このフラグはリーダ/ライタに指示します。
update ライブラリの新しいバージョンでは、Class CsvConfiguration
はConfiguration
所属していません StackOverflow