C# CSVパーサー(ステップバイステップ)チュートリアル
CSVファイルを解析してXLSXファイルに変換したり、重要なタスクのために.NETでXLSXファイルをCSVファイルに変換しようとしたことはありませんか?でも、たくさんのコードを書かずにそれを行う方法がわからなかったですか?
この問題を解決するための多くのCSVライブラリが存在します。 しかし、IronXL C# Excelライブラリを使用すると、これらのタスクをわずか2行のコードで実行できます。
始めるには、Visual Studioが必要で、以下の指示に従って詳細にインストールしてください。
1. Visual Studioで新しいプロジェクトを作成する
Visual Studioエディタを開きます。
Visual Studioのファイルメニューに移動します。 "新しいプロジェクト"を選択し、コンソールアプリケーションを選択します。
プロジェクト名を入力し、プロジェクトの場所を選択します。 作成ボタンをクリックしてプロジェクトを作成します。 以下のスクリーンショットに示されているように、要求される.NET Frameworkを選択します:
Create a new C#. NET コンソールアプリケーション
program.csファイルが開かれ、ロジックを入力してアプリケーションを作成/実行できます。
2. IronXL C#ライブラリをインストールする
IronXLライブラリは、多くの異なる方法でダウンロードおよびインストールできます。 今日は、そのうちの2つに焦点を当てます:
- Visual Studio NuGet パッケージ マネージャーの使用
- Visual Studioを使用する
2.1. Visual Studio NuGetパッケージマネージャーを使用する
NuGetパッケージマネージャーUIはVisual Studioで利用可能で、プロジェクトに直接パッケージをインストールできます。 以下のスクリーンショットは、それを開く方法を示しています。
Installing IronXL using Visual Studio NuGet Package Manager GUI
パッケージマネージャーUIは、NuGetのウェブサイトで提供されているパッケージライブラリの一覧を表示するブラウズ機能を提供します。以下のスクリーンショットのように"IronXL"というキーワードを入力して、IronXLパッケージを見つけます。
Locate the IronXL library in NuGet Package Manager by searching for it in the Browse section
IronXL.Excelパッケージを選択し、インストールボタンをクリックしてプロジェクトに追加します。
2.2. Visual Studioコマンドラインを使用する
Visual Studioメニューで、ツール > NuGetパッケージマネージャー > パッケージマネージャーコンソールをクリックします。
Access the NuGet Package Manager Console within Visual Studio from the Tools menu
パッケージマネージャーコンソールは画面の下部に表示されます。 次のコマンドを入力してからEnterキーを押すだけで、IronXLはインストールされます。
Install-Package IronXL.Excel
Install the IronXL library through Command-Line
3. CSVファイルの解析
CSVを手動で解析するには、膨大な正確なコードを書く必要がありますが、IronXLを使えば数行のコードで済みます。
CSV形式のファイルを解析するたびに、従来のC#コードだけを使うと、非常に冗長なコードを使用しなければなりません。 これを達成するためのコード例です。
using FileHelpers;
using System;
namespace parse_csv
{
[DelimitedRecord(",")]
public class Record
{
public string Name;
public string Age;
}
class Program
{
static void Main(string[] args)
{
// Create a FileHelperEngine for the Record class
var fileHelperEngine = new FileHelperEngine<Record>();
// Read records from the CSV file into an array
var records = fileHelperEngine.ReadFile(@"C:\File\records.csv");
// Print each record's Name and Age
foreach (var record in records)
{
Console.WriteLine(record.Name);
Console.WriteLine(record.Age);
}
}
}
}using FileHelpers;
using System;
namespace parse_csv
{
[DelimitedRecord(",")]
public class Record
{
public string Name;
public string Age;
}
class Program
{
static void Main(string[] args)
{
// Create a FileHelperEngine for the Record class
var fileHelperEngine = new FileHelperEngine<Record>();
// Read records from the CSV file into an array
var records = fileHelperEngine.ReadFile(@"C:\File\records.csv");
// Print each record's Name and Age
foreach (var record in records)
{
Console.WriteLine(record.Name);
Console.WriteLine(record.Age);
}
}
}
}Imports FileHelpers
Imports System
Namespace parse_csv
<DelimitedRecord(",")>
Public Class Record
Public Name As String
Public Age As String
End Class
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Create a FileHelperEngine for the Record class
Dim fileHelperEngine As New FileHelperEngine(Of Record)()
' Read records from the CSV file into an array
Dim records = fileHelperEngine.ReadFile("C:\File\records.csv")
' Print each record's Name and Age
For Each record In records
Console.WriteLine(record.Name)
Console.WriteLine(record.Age)
Next record
End Sub
End Class
End Namespaceしかし、IronXLを使えば、これは数行のコードで達成できます。
IronXLを使用すると、XLSX、XLS、TSVなどからCSVファイルを解析できます。 このチュートリアルでは、次の変換を探ります:
- XLSXファイルからCSVファイルを解析する
- XLSファイルからCSVファイルを解析する
- TSVファイルからCSVファイルを解析する
3.1. XLSXファイルからCSVファイルを解析する
Microsoft Excelを開き、新しいXLSXファイルを作成します。それにいくつかの擬似データを行と列に入力します。 以下の画像は、このチュートリアルですべての変換に使用されるファイルを示しています。
Sample Excel data
ファイルが準備できたら、以下のサンプルコードを書いてプログラムを実行してください。
using IronXL;
class Program
{
static void Main()
{
// Load the XLSX file into a WorkBook object
WorkBook wb = WorkBook.Load("test.xlsx");
// Save the WorkBook as a CSV file
wb.SaveAsCsv("Parsed CSV.csv");
}
}using IronXL;
class Program
{
static void Main()
{
// Load the XLSX file into a WorkBook object
WorkBook wb = WorkBook.Load("test.xlsx");
// Save the WorkBook as a CSV file
wb.SaveAsCsv("Parsed CSV.csv");
}
}Imports IronXL
Friend Class Program
Shared Sub Main()
' Load the XLSX file into a WorkBook object
Dim wb As WorkBook = WorkBook.Load("test.xlsx")
' Save the WorkBook as a CSV file
wb.SaveAsCsv("Parsed CSV.csv")
End Sub
End Class実行が完了すると、Parsed CSV.csvという名前の新しいファイルが作成されます。 CSVファイルの読み込みは、任意のエディタやリーダーで行うことができます。以下の画像は、上記のコマンドの出力を示しています - 生成されたCSVデータ。 出力ファイルでは、二重引用符が太字の値を表しています。
The result of invoking WorkBook.SaveAsCsv method on the sample Excel Workbook
3.2. XLSファイルからCSVファイルを解析する
この例では、XLSファイルをCSV形式に変換する方法を見ていきます。
まず、例として使用するXLSファイルを作成し、CSV形式に変換します。
A sample XLS file
次に、以下のブロックコードを実行して、サンプルのXLSファイルをCSVファイルに変換します。
using IronXL;
class Program
{
static void Main()
{
// Load the XLS file into a WorkBook object
WorkBook wb = WorkBook.Load("XLS.xls");
// Save the WorkBook as a CSV file
wb.SaveAsCsv("Example2.csv");
}
}using IronXL;
class Program
{
static void Main()
{
// Load the XLS file into a WorkBook object
WorkBook wb = WorkBook.Load("XLS.xls");
// Save the WorkBook as a CSV file
wb.SaveAsCsv("Example2.csv");
}
}Imports IronXL
Friend Class Program
Shared Sub Main()
' Load the XLS file into a WorkBook object
Dim wb As WorkBook = WorkBook.Load("XLS.xls")
' Save the WorkBook as a CSV file
wb.SaveAsCsv("Example2.csv")
End Sub
End Class上記のコードの実行が完了すると、新しく生成されたCSVファイルが得られます。
The result CSV file from saving using the code above
3.3. TSVファイルからCSVファイルを解析する
スプレッドシートアプリケーションは、データをデータベース間で転送するために、TSVファイル、またはタブ区切り値ファイルを頻繁に使用します。 データテーブルを保存し、タブでデータの列を区切り、各レコードが異なる行になります。
IronXLは、TSV形式からのCSVファイル解析を提供して、より良いデータ管理をサポートします。
例を始めましょう。
A sample TSV spreadsheet
using IronXL;
class Program
{
static void Main()
{
// Load the TSV file into a WorkBook object
WorkBook wb = WorkBook.Load("TSV.tsv");
// Save the WorkBook as a CSV file
wb.SaveAsCsv("Example3.csv");
}
}using IronXL;
class Program
{
static void Main()
{
// Load the TSV file into a WorkBook object
WorkBook wb = WorkBook.Load("TSV.tsv");
// Save the WorkBook as a CSV file
wb.SaveAsCsv("Example3.csv");
}
}Imports IronXL
Friend Class Program
Shared Sub Main()
' Load the TSV file into a WorkBook object
Dim wb As WorkBook = WorkBook.Load("TSV.tsv")
' Save the WorkBook as a CSV file
wb.SaveAsCsv("Example3.csv")
End Sub
End Class以下にCSV形式での出力を示します。
The output CSV file
4. 結論
このチュートリアルでは、IronXLを使用して、異なるファイル形式をC#でCSVに解析します。
さらに、IronXLライブラリは次の機能も提供しています:
- データ操作を含む広範囲の機能セット、およびデータエクスポート。
- Excelと完全に互換性のあるチャート管理のサポート。
- テキストの配置、フォントサイズ、色などのセルの書式設定のサポート。
- Microsoft Excelで利用可能な任意のメソッドをカスタマイズする機能。フリーズパネル、数式の追加、および条件付き書式の適用を含む。
- Excel パスワードによる暗号化との互換性。
詳細な情報については、IronXLの機能、コードサンプル、およびドキュメントコンテンツをチェックしてください。 IronXLをダウンロードして、30日間無料のお試し用ライセンスキーでお試しください。 ライセンシングの詳細な用語および条件については、Licensing Pageをご覧ください。
全5つのIron Softwareライブラリのライセンスを取得するために、2つのIronXLライブラリライセンスの料金でIron Suiteを購入してください!
ご覧いただきありがとうございます!
よくある質問
Interopを使用せずにC#でCSVファイルを解析するにはどうすればよいですか?
IronXLを使用すると、Interopを使用せずにC#でCSVファイルを解析できます。CSVファイルをWorkBookオブジェクトにロードし、直接操作し、数行のコードで他の形式(XLSXやXLSなど)に変換できます。
Visual StudioでIronXLライブラリをインストールするのに必要なステップは何ですか?
Visual StudioでIronXLライブラリをインストールするには、NuGetパッケージマネージャUIを開き、'IronXL'を検索してインストールします。代わりに、Visual Studioコマンドラインを使用し、パッケージマネージャコンソールでInstall-Package IronXL.Excelコマンドを実行できます。
C#でCSVファイルをExcel形式に変換するにはどうすればよいですか?
IronXLを使用して、CSVファイルをXLSXやXLSのようなExcel形式に変換できます。CSVをWorkBookオブジェクトにロードし、SaveAsXlsxなどのメソッドを使用して希望の形式で保存します。
TSVファイルを解析し、CSVに変換することは可能ですか?
はい、IronXLはTSVファイルの解析を可能にします。TSVファイルをWorkBookオブジェクトにロードし、SaveAsCsvメソッドを使用してCSVファイルに変換します。
C#のExcelライブラリはデータ操作にどのような機能を提供しますか?
IronXLはデータ操作、チャート管理、セルフォーマット、およびExcel暗号化との互換性などの機能を提供します。フリーズパネル、数式、条件付き書式設定などの操作をサポートしています。
C#でプログラム的にExcelスプレッドシートの形式を管理するにはどうすればよいですか?
IronXLは、XLSX、XLS、CSVなどの異なるスプレッドシート形式の管理を可能にします。これらの形式の間で変換を行い、.NETアプリケーション内で効率的にデータを処理するためのメソッドを提供します。
購入前にC#用のExcelライブラリを試すことはできますか?
はい、IronXLはNuGetウェブサイトからダウンロード可能な30日間の無料トライアルを提供しています。これにより、機能をテストし、購入前にニーズに合致しているか確認できます。
IronXLはCSVファイルの解析と変換にどのような利点を提供しますか?
IronXLは、最小限のコードでCSVファイルの解析と変換を簡素化します。効率的なデータ処理を保証し、C#アプリケーションでのExcelファイル操作を強化する豊富な機能を提供します。






