CSV-C#

【まとめ】C#で使えるおすすめCSVライブラリ3選

はじめに

JSONやYAMLなど、いろいろなデータ形式が増えてきましたが、まだまだCSVを扱う(しかない)方は多いんじゃないでしょうか?

今回は、C#で使えるオススメCSVライブラリ3選を紹介します。

おすすめ CSVライブラリ 3選
  • ① CsvHelper
  • ② ServiceStack.Text
  • ③ Csv

※ DL数、Star数は記事作成時点のものです。

① CsvHelper

概要

NuGetでのダウンロード数がダントツで多く、一番有名なライブラリです。公式ページでは「高速・使いやすい・柔軟」を売りにしています。
読み込みデータと同じ形式のクラスを作成すると、自動でマッピングしてくれる機能があります(別の方法もあり)。

公式サイトに説明やサンプルが多く、解説サイトも多いライブラリです。

  • 使用者がダントツに多い。
  • 同形式のクラスを作ると自動マッピングしてくれる。
  • 公式の説明・解説サイトが多い。

ライセンス・人気度

ライセンスMS-PL / Apache License, Ver.2.0
(商用フリー )
.NETバージョン2.3 ~
NuGet ダウンロード数39.9M
GitHub Star数3.1k

公式(プロジェクト)ページ

https://joshclose.github.io/CsvHelper/

② ServiceStack.Text

概要

ServiceStackという、WebServiceのフレームワークに含まれるライブラリです。NuGetで個別にダウンロードすることができます。

伝統的な「CSVの読み書き」というより、「シリアライズ/デシリアライズ」という言葉が合う気がします。
JSON・JSV・CSVに対応しているため、Web系で使われる方や、CSVと一緒にJSON・JSVを使われる方向けかと思います。

  • JSON・JSVにも対応
  • 「読み込み」ではなく「シリアライズ」なライブラリ
  • Web系、JSONなどを一緒に使いたい人向け

ライセンス・人気度

ライセンスAGPL             
.NETバージョン4.5~
Nuget ダウンロード数14.8M
GitHub Star数1.2k

公式(プロジェクト)ページ

https://github.com/ServiceStack/ServiceStack.Text

③ Csv

概要

2020年10月末に公開された新しいライブラリです
公式にも「Really Simple~」と記載があるように、使い方はとてもシンプルです。配列に読み込んだ後、要素を数字・カラム名で指定することで、使用できます。

「行のスキップ」や「トリム」などの便利オプションも備えているので、
サクっと使うなら一番良いライブラリだと思います。

  • シンプルで分かりやすい
  • スキップやトリムなど便利機能もあり
  • サクッと使うならコレ

※ 別途Csvの使い方を掘り下げた記事を作成しました。
  一番下の「まとめ」をご覧ください。

ライセンス・人気度

ライセンスMIT            
.NETバージョン2.0 ~
Nuget ダウンロード数263k
GitHub Star数0.24k

公式(プロジェクト)ページ

https://github.com/stevehansen/csv/

まとめ

C#で使えるCSVのライブラリを紹介しました。

昨今いろいろなデータ形式は増えてきましたが、システムの都合などで、まだまだCSVの読み書きが必要!という方も多いと思います。そういった方の参考になればうれしいです。

個人的にサクッと使える「Csv」が気になったので、基本的な使い方や、便利オプションを掘り下げた記事を作成しました。「Csv」について興味のある方は、以下の記事も合わせてご覧ください。

CSVのライブラリを探している方の参考になればうれしいです。

UdemyでC#のスキルを上げる

C#のスキルを上げるには、Udemyの動画講座がおすすめです。「C#で読みやすいコードを書く50の方法」「保守性の高いコードの書き方」など、脱初心者/スキルアップのための講座が公開されています。

1講座 2440円程度で公開されており、返金保証あり。視聴期限もないので自分のペースで仕事のスピードや評価のUPのための力をつけことができます。

書籍を買うのもいいですが、同額の値段で「動画講座」でもスキルを磨いてみてください。きっと費用対効果の高い自己投資になります。

以下のリンクはC#講座の一覧です。

⇒ C#の講座一覧をみる

Lenovo Web広告限定ストア

Macに負けないデザインのWindowsPCなら、「ThinkPad」がおすすめ。私も仕事とプライベートで10年以上使っています。以下のリンクで、割引情報やクーポン情報を入手できるので、ぜひ覗いてみてください。

特別割引や限定クーポンを見る

応援・要望お待ちしてます

ブログを見ていて「この辺を詳しく知りたい」「このライブラリの使い方を知りたい」「こんなことで困ってる」...etc があれば、コメント・問い合わせ・Twitterで教えてください。質問・ご要望に合わせて解説記事を作ります。

ブログを気に入っていただけたり、「応援してもいいよ」という方がいたら、ブログやSNSでの紹介をお願いします。 あたたかい応援は、中の人の更新の大きな励みになります。

ABOUT ME
えす
現役のソフトウェアエンジニアです。 C++ C# Python を使ってます。10年ちょい設計/開発部門にいましたが、今はQAエンジニアっぽいことをしています。

COMMENT

メールアドレスが公開されることはありません。