IRONSOFTWAREHOME
他のコンポーネントと比較する

IronXLとCsvWriterの比較

Curtis Chau
Curtis Chau
Updated: 2026年7月19日

CSVファイルの操作は、挑戦的な作業になることがあります。 しかし、今日では、多くのライブラリがこの作業を支援するために利用可能であり、Microsoft Excelをインストールする必要はありません。

この記事では、C# .NETテクノロジーでMicrosoft Excelドキュメントをプログラム的に操作する方法を議論し、比較します。Excel標準形式やCSV形式で、IronXLとCSVWriterという2つの最も人気のあるライブラリを使用します。

まずは両方のライブラリが提供するものを見てみましょう。

IronXLライブラリ

IronXLは、C#でMicrosoft Excel文書の読み取りと編集を容易にする.NETのライブラリです。 IronXL.Excelは、さまざまなスプレッドシート形式を読み取るためのスタンドアローン for .NETソフトウェアライブラリです。 Microsoft Excelがインストールされている必要はなく、Interopにも依存しません。

IronXLは直感的なC# APIであり、Excelスプレッドシートファイルを.NETで超高速で読み取り、編集、作成できます。 IronXLは、.NET Core、.NET Framework、Xamarin、モバイル、Linux、macOS、およびAzureを完全にサポートしています。

IronXLは、C#向けのリーディング.NET Coreおよび.NETフレームワークのExcelスプレッドシートライブラリです。

IronXLの機能セット

  • データをロード、読み取り、編集 — XLS/XLSX/CSV/TSV から
  • 保存とエクスポート — XLS/XLSX/CSV/TSV/JSON へ
  • 範囲 — 使いやすいWorkSheet ["A1:B10"]構文。 直感的に範囲を結合・作成します。
  • ソート — 範囲、列、行のソート。
  • スタイリング — セルの視覚スタイル、フォント、サイズ、背景パターン、境界線、配置、数値フォーマット。

CSVWriter

CSVファイルを書き込むため for .NETライブラリ。 非常に高速で柔軟、かつ使いやすい。 カスタムクラスオブジェクトの書き込みをサポート。

CsvWriterの特徴

  • 高速: クラスをフライでコンパイルして極めて高速なパフォーマンスを実現
  • 柔軟: 書き込みは保守的、読み込みは自由 * 使いやすさ:読み書きはWriteRecords(records)のように簡単です。
  • 高度に設定可能
  • Linux対応モード
  • メモリ使用量が少ない

1. コンソールアプリケーションを作成

コンソールアプリケーションを作成する手順は以下の通りです:

  • Visual Studio 2022 IDE を開始します。
  • "新しいプロジェクトを作成"をクリックします。
  • "新しいプロジェクトを作成"ページで、言語ドロップダウンリストから C# を選択し、プラットフォーム リストから Windows を、そしてプロジェクトタイプリストから コンソール を選択します。
  • 表示されるプロジェクトテンプレートから Console App (.NET Framework) を選択します。

プロジェクトの作成 - コンソールアプリケーション

  • 次へをクリックします。
  • 追加情報画面で使用したいフレームワークバージョンを指定します。 この例では**.NET Framework 4.8**を使用します。

プロジェクトの作成 - .NET Framework

  • 作成をクリックしてプロセスを完了します。

プロジェクトが作成され、ライブラリのテストの準備がほぼ整いました。 ただし、ライブラリをプロジェクトにインストールして統合する必要があります。 まずIronXLをインストールしましょう。

2. IronXL C# ライブラリのインストール

IronXLライブラリをダウンロードしてインストールする方法としては以下のものがあります:

  1. Visual StudioでNuGetパッケージを使用します
  2. NuGet パッケージを直接ダウンロードします
  3. DLLで手動インストールします

それぞれを詳しく見ていきましょう。

2.1. NuGetパッケージを使用したVisual Studio経由で

Visual Studioは、NuGetパッケージをプロジェクトにインストールするNuGetパッケージマネージャーを提供しています。 これにアクセスするには、プロジェクトメニューを通じて、またはソリューションエクスプローラでプロジェクトを右クリックして行います。

NuGet パッケージの管理を選択

  • 今度は、ブラウズ タブから、IronXL.Excel を検索 -> インストールします

IronXLを検索

  • 完了しました。

2.2. NuGetパッケージを直接ダウンロード

これはNuGetサイトに直接アクセスしてパッケージをダウンロードすることによって行うことが可能です。 手順は次の通りです:

  • Navigate to https://www.nuget.org/packages/IronXL.Excel
  • "パッケージをダウンロード"を選択
  • ダウンロードしたパッケージをダブルクリックします
  • パッケージがインストールされます
  • Visual Studio プロジェクトをリロードして、使用を開始します

2.3. DLLで手動インストール

IronXL C#ライブラリをダウンロードしてインストールする別の方法として、開発者コマンドプロンプトを使用してIronXLNuGetパッケージをインストールする次のステップを実行します。

  • 開発者コマンドプロンプト を開く — 通常は Visual Studio フォルダ内にあります。
  • 次のコマンドを入力します:

PM > Install-Package IronXL.Excel

  • Enterキーを押します
  • これにより、パッケージのダウンロードとインストールが行われます
  • Visual Studio プロジェクトをリロードして、使用を開始します

2.4. 必要なusingディレクティブを追加

  1. ソリューションエクスプローラーで Program.cs ファイルを右クリックして、[コードの表示] をクリックします。
  2. コードファイルの冒頭に以下のusingディレクティブを追加します。
using IronXL;

これで完了です! IronXLはダウンロードされ、インストールされ、使用準備が整いました。 ただし、その前に CsvHelper をインストールするべきです。

3. CSVWriterのインストール

3.1. NuGet パッケージ マネージャー コンソールを使う場合

CSVWriterを使用するには、CsvHelper C# ライブラリをダウンロードしてインストールする必要があります。 そのためには、開発者コマンドプロンプトでNuGetパッケージをインストールするための以下の手順を使用します。

  • 開発者コマンドプロンプト を開く — 通常は Visual Studio フォルダ内にあります。
  • 次のコマンドを入力します:

PM > Install-Package CsvHelper -Version 27.2.1

  • Enterキーを押します
  • これにより、パッケージのダウンロードとインストールが行われます
  • Visual Studio プロジェクトをリロードして、使用を開始します
  • 実装のためにCsvHelper.CsvWriterメソッドの詳細を確認します。

3.2. 直接ダウンロード

NuGetウェブサイトからダウンロード: https://www.nuget.org/packages/CsvHelper/

4. IronXL を使用した CSV ファイルの操作

***カンマ区切り値 (CSV)***ファイルは、カンマを使って値を分ける区切りテキストファイルです。 ファイルの各行はデータレコードです。 これらのファイルを計算用に操作することは挑戦的なタスクですが、IronXLはこれを非常に簡単に達成するための優れたオプションを提供しており、Microsoft Excelを使用せずに済みます。 まず最初に、CSVファイルを通常のExcelファイルに変換しましょう。

4.1. CSVファイルをExcel形式に変換

このプロセスは非常に簡単で簡潔です。 通常、1行のコードで完了します。

CSVからExcel形式へ:

// Load the CSV file and specify the format and delimiter
WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Get the default worksheet
WorkSheet ws = workbook.DefaultWorkSheet;

// Save the workbook as an Excel file
workbook.SaveAs("CsvToExcelConversion.xlsx");

4.2. IronXL を使用して変換された CSV ファイルを読み取りおよび操作

IronXL WorkBookクラスは、Excelシートを表します。 C#を使ってExcelファイルを開くには、WorkBook.Loadを使用し、Excelファイル(.xlsx)のパスを指定します。 以下の1行コードは、読み取りのためにファイルを開くために使用されます:

// Load WorkBook
var workbook = WorkBook.Load(@"Spreadsheets\\sample.xlsx");

各WorkBookは複数のWorkSheetオブジェクトを含むことができます。 これらはExcelドキュメントのワークシートを表しています。 ワークブックにワークシートがある場合、次のようにして名前で取得します:

// Open Sheet for reading
var worksheet = workbook.GetWorkSheet("sheetnamegoeshere");

セル値を読み取るためのコード:

// Read from Ranges of cells elegantly.
foreach (var cell in worksheet["A2:A10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}

ワークブックとワークシートをロードして読み取った後、以下のコードサンプルを使用して、数式を変更したり、特定のセルに数式を適用したりできます。 コードは次の通りです:

// Set Formulas
worksheet["A1"].Formula = "Sum(B8:C12)";
worksheet["B8"].Formula = "=C9/C11";
worksheet["G30"].Formula = "Max(C3:C7)";

// Force recalculate all formula values in all sheets.  
workbook.EvaluateAll();

4.3. Excel文書をCSVファイルに保存する

CSVファイルの書き込みは、IronXLを使用することで簡単なプロセスです。 以下のコードでは、SaveAsCsvメソッドを使用して、ExcelファイルをCSV形式で単純に保存します。

// Load the workbook
WorkBook wb = WorkBook.Load("Normal_Excel_File.xlsx");
// Save as .csv file
wb.SaveAsCsv("SaveAsCSV.csv", ",");
// Saved as : SaveAsCSV.Sheet1.csv

5. CSVWriterを使用してCSVデータを操作する

CSVファイルにデータを書くことは一般的な操作です。 CSVHelperメソッドCSVWriterとセパレータを使用すれば、すべての文字と改行を簡単に扱うCSVライターが作成できます。 ここではCSVWriterを使用してデータを書く方法を見ていきます。

5.1. シンプルなコンソールアプリケーションを作成する

提供されたセパレータを使用して、Visual StudioでシンプルなCSVWriterのコンソールアプリを作成します。 プロジェクトが作成されたら、次のステップとしてPersonクラスを作成します:

public class Person
{
    public int Id { get; set; }
    public string Name { get; set; }
    public bool IsLiving { get; set; }
}

Mainメソッド内で、CSVファイルに書き込むPersonオブジェクトのリストを作成しましょう:

var myPersonObjects = new List<Person>()
{
    new Person { Id = 1, IsLiving = true, Name = "John" },
    new Person { Id = 2, IsLiving = true, Name = "Steve" },
    new Person { Id = 3, IsLiving = true, Name = "James" }
};

5.2. デフォルト設定を使用してC#でCSVファイルに書き込む

CsvHelperは、C#でCSVWriterメソッドを使用してCSVを書く標準的な方法として浮上しており、非常に使いやすいです:

using (var writer = new StreamWriter("filePersons.csv"))
using (var csv = new CsvWriter(writer, CultureInfo.InvariantCulture))
{
    csv.WriteRecords(myPersonObjects);
}

5.3. データの追加

プログラムを実行するたびに、古いCSVファイルが上書きされるという事実に注意を払う必要があります。 時には、既存のデータを上書きするのではなく、ファイルの終わりにデータを追加したいことがあります。 CSVWriterは、その提供されたセパレータではファイルを開く/書くことはその責務ではないとして、これを行うためのメソッドを提供しません。 これはFileStreamを使用し、それによってStreamWriterを作成することで達成できます。 これはこの記事の範囲を超えますが、アプリケーションの不可欠な部分であるため、これを行う方法を示します。

var configPersons = new CsvConfiguration(CultureInfo.InvariantCulture)
{
    HasHeaderRecord = false
};
using (var stream = File.Open("filePersons.csv", FileMode.Append))
using (var writer = new StreamWriter(stream))
using (var csv = new CsvWriter(writer, configPersons))
{
    csv.WriteRecords(myPersonObjects);
}

既存ファイルへの追加は、追加時に順序が変更される可能性や新しいプロパティが追加された可能性があるため、厄介です。 追加する際にはこの点に注意を払うべきです。

6. ライセンス

IronXLはオープンに商用化されているC# Excelライブラリです。 開発には無料で使用でき、商用デプロイメントのためにいつでもライセンスを取得できます。 ライセンスが利用可能です。シングルプロジェクト、シングル開発者、代理店、グローバル企業向けに加え、SaaSやOEM再配布向けにも対応しています。 すべてのライセンスには30日間の返金保証、1年間の製品サポートとアップデート、デブ/スタージング/プロダクションのための有効性、および永久ライセンス(1回の購入)が含まれています。 Liteパッケージは$999から始まります。

提供されたセパレータを持つCSVWriterはコンマ区切り要素であり、商用に優しい使用に対して完全に無料です。

7. まとめと結論

概要

IronXLは、Excelファイルを操作するために必要なすべてを提供する完璧なライブラリです。さまざまなフォーマットをXLSXに変換し、また、XLSXからCSVのような他のフォーマットに変換する機能を提供します。この相互変換は、他のファイルフォーマットを簡単に操作する柔軟性をユーザーに提供します。

一方、CSVWriterはCSVファイルフォーマットだけで機能し、非常に限定的なオプションです。 ユーザーは異なるファイルフォーマットの間で切り替えることができませんが、IronXLでは可能です。 すべてのサンプルコードはCsvHelperのドキュメントファイルにあります。 このドキュメントは、プロジェクトでCSVWriterを使用する方法に関するガイドラインを提供します。

結論

IronXLは、複数のフォーマットで作業をサポートするため、CsvHelper.CSVWriterに対して明確な利点を持っています。 さらに、選択に応じた数式とスタイルを適用できますが、CsvHelperはCSVファイルの読み書きのみを許可しており、限られたオプションしかありません。 加えて、新しいレコードを既存のCSVファイルに追加することはできず、前のエントリを単に上書きします。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

...
詳しく読む

関連する記事

Key in blue circle

無料の30日間トライアルキーをすぐに入手してください。

Your trial license will be sent to your email address

制限なし。100% ロック解除済み。クレジットカード不要。

bullet_checkedクレジットカードやアカウントの作成は不要です。制限なし。100% ロック解除済み。クレジットカード不要。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
無料のライブデモを予約する
Booking Badge

世界中の数百万人のエンジニアから信頼されています。

ライセンスはより安く
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。