
Read CSV File Using C# (Code Example Tutorial)
このチュートリアルでは、追加のInteropなしでIronXL C#ライブラリを使用してCSVファイルを読む方法を、非常に効率的かつ効果的に示しています。
C#でCSVファイルを1行ずつ読み取る方法
- CSV ファイルを行ごとに読み取るための C# ライブラリをインストールする
- 高度な
LoadCSVメソッドを利用してCSVファイルを読み込みます。 Existsメソッドを使用して、C#で存在しないファイルの読み込みをキャッチします。ToDataTableメソッドを使用してCSVデータをデータベースに変換するSaveAsメソッドを使用してExcelファイルをエクスポートし、CSVデータは自動的にExcelに変換されます。
How to read CSV Files in C#
MVC、ASP.NET、または.NET CoreでCSVファイルを読む前に、まずIronXLをインストールする必要があります。 こちらがプロセスの基本的な概要です。
Visual Studioのプロジェクトメニューで、NuGetパッケージの管理を選択し、IronXL.Excelを検索して、インストールします。
NuGetパッケージマネージャでIronXLパッケージをインストール
IronXLは、C#でCSVファイルを読み込む必要がある際に利用するのに優れたツールです。 以下のコード例は、カンマや他の区切り文字を使用してCSVファイルを読むことができることを示しています。
// Load a CSV file into a WorkBook object specifying file format and delimiters
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Get the default worksheet from the workbook
WorkSheet ws = workbook.DefaultWorkSheet;
// Save the workbook as an Excel file
workbook.SaveAs("Csv_To_Excel.xlsx");' Load a CSV file into a WorkBook object specifying file format and delimiters
Dim workbook As WorkBook = WorkBook.LoadCSV("Weather.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
' Get the default worksheet from the workbook
Dim ws As WorkSheet = workbook.DefaultWorkSheet
' Save the workbook as an Excel file
workbook.SaveAs("Csv_To_Excel.xlsx")
このチュートリアルのためのCSVデータ
オブジェクトWorkBookが作成されます。 WorkBookオブジェクトのLoadCSVメソッドを使用して、CSVファイルの名前、フォーマット、および読み取られるCSVファイルで使用される区切り文字を示し、それらを文字列配列として格納します。 このシナリオでは、カンマが区切り文字として使用されます。
その後、WorkSheetオブジェクトが作成されます。 ここにCSVファイルの内容が保存されます。 ファイルは新しい形式に名前を変更して保存されます。 CSVファイルデータは、ワークシートに表形式で配置されます。 出力は次のようになります:
データがExcelファイルに変換されました
CSV parsing in C# .NET
CSVでは、フィールド内の改行の処理方法と、フィールドが引用符で囲まれる方法にいくつかの問題があり、このため単純な文字列分割技法がSplit("'")で動作しません。 その代わり、IronXLはLoadCSVメソッドからのオプションパラメータを使用して区切り文字をカスタマイズする機能を提供します。詳細はLoadCSVのAPIドキュメントを確認してください。
C# Records — Reading CSV Data
以下の例では、foreachループを使用してCSVファイル内の行を繰り返し処理し、コンソールを使用してレコードのデータを書き出します。
// Load a CSV file into a WorkBook object specifying file format and delimiters
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Get the default worksheet from the workbook
WorkSheet ws = workbook.DefaultWorkSheet;
// Convert the worksheet data into a DataTable
DataTable dt = ws.ToDataTable(true); // The argument true indicates the first row is header
// Iterate through each row in the DataTable
foreach (DataRow row in dt.Rows)
{
// Iterate through each column in the current row
for (int i = 0; i < dt.Columns.Count; i++)
{
// Output each cell value to the console
Console.Write(row[i] + " ");
}
// New line after each row
Console.WriteLine();
}' Load a CSV file into a WorkBook object specifying file format and delimiters
Dim workbook As WorkBook = WorkBook.LoadCSV("Weather.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
' Get the default worksheet from the workbook
Dim ws As WorkSheet = workbook.DefaultWorkSheet
' Convert the worksheet data into a DataTable
Dim dt As DataTable = ws.ToDataTable(True) ' The argument true indicates the first row is header
' Iterate through each row in the DataTable
For Each row As DataRow In dt.Rows
' Iterate through each column in the current row
For i As Integer = 0 To dt.Columns.Count - 1
' Output each cell value to the console
Console.Write(row(i) & " ")
Next i
' New line after each row
Console.WriteLine()
Next row
CSVファイルからデータをアクセスし、コンソールに表示
CSVファイルの文字列行をExcel形式に変換
手順は簡単です:CSVファイルを読み込み、Excelファイルとして保存します。
// Load a CSV file into a WorkBook object specifying file format and delimiters
WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Get the default worksheet from the workbook
WorkSheet ws = workbook.DefaultWorkSheet;
// Save the workbook as an Excel file
workbook.SaveAs("CsvToExcelConversion.xlsx");' Load a CSV file into a WorkBook object specifying file format and delimiters
Dim workbook As WorkBook = WorkBook.LoadCSV("test.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
' Get the default worksheet from the workbook
Dim ws As WorkSheet = workbook.DefaultWorkSheet
' Save the workbook as an Excel file
workbook.SaveAs("CsvToExcelConversion.xlsx")IronXLを使用して変換されたCSVファイルを読み取り、操作
IronXL WorkBook クラスはExcelシートを表し、このクラスを使用してC#でExcelファイルを開きます。 以下のコード例では、選択したExcelファイルをWorkBookオブジェクトにロードします:
// Load WorkBook from a .xlsx file
var workbook = WorkBook.Load(@"Spreadsheets\\sample.xlsx");' Load WorkBook from a .xlsx file
Dim workbook = WorkBook.Load("Spreadsheets\\sample.xlsx")多数のWorkBooksにWorkSheet オブジェクトを見つけることができます。 これらはExcelドキュメントのワークシートです。 ワークブックにワークシートがある場合、次のようにして名前で取得できます:
// Open a specific worksheet for reading by its name
var worksheet = workbook.GetWorkSheet("sheetnamegoeshere");' Open a specific worksheet for reading by its name
Dim worksheet = workbook.GetWorkSheet("sheetnamegoeshere")セル値を読み取るためのコード:
// Read and output values from a range of cells elegantly
foreach (var cell in worksheet["A2:A10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}' Read and output values from a range of cells elegantly
For Each cell In worksheet("A2:A10")
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell以下のコードサンプルは、ワークブックとワークシートを読み込んだ後に数式を更新または特定のセルに適用できます。 以下のコードです:
// Set formulas for specific cells
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();' Set formulas for specific cells
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()結論とIronXL特別オファー
IronXLはCSVをExcelにわずか2行のコードで変換します。C#でのCSV処理も可能です。
Interopの必要なしに、IronXLのExcel APIを使用するのは簡単です。 さらに、IronXLは、Excelワークブック、ワークシートおよびセルレベルで相互作用するための幅広い機能を提供しています。たとえば、人気のある形式間の変換、セルデータのフォーマット、セルの結合、 数学関数の挿入、およびチャートの管理や画像の追加など。
IronXL試用ライセンスキーを使用して透かしなしで起動できます。
ライセンスは$999から始まり、1年間の無料サポートと更新が含まれています。
IronPDF、IronXL、IronOCR、IronBarcode、およびIronWebScraperはすべてIron Software Suiteの一部です。 Iron Softwareは、その全パッケージを割引価格で購入することを可能にします。それらのツールすべてを2つ分の価格で使用できます。
これは探る価値があります。

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



