IRONXLの使用 BlazorでCSVにエクスポートする方法 Curtis Chau 更新日:6月 22, 2025 Download IronXL NuGet Download テキストの検索と置換 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article 今日は、BlazorとIronXLを使用してExcelファイルをCSV形式に変換する方法について詳しく見ていきます。 このチュートリアルが終わるころには、CSVを含むさまざまな形式でExcelデータをエクスポートする基本的なBlazorアプリケーションを作成できるようになります。 IronXLの紹介 IronXL is a powerful .NET Excel library designed to work with Excel files in a wide range of formats, including XLS, XLSX, XLSM, XLTX, and CSV. It allows developers to read, write, and manipulate Excel data programmatically without the need for Microsoft Office or Excel Interop. IronXLを使用すると、Excelワークブックを作成、読み込み、保存したり、個々のセルや範囲にデータを読み書きできます。 It also supports advanced features such as formatting, formulas, charts, and pivot tables. IronXLはさまざまな.NETフレームワークに対応しており、C#やVB.NETといった人気のある言語で使用できます。 ExcelファイルをCSVに変換する手順 Blazorプロジェクトの設定 まず、Blazorサーバープロジェクトを新しく作成する必要があります。 Visual Studioを開き、新しいプロジェクトを作成し、「Blazor Server App」テンプレートを選択します。 プロジェクトに名前をつけ、「作成」をクリックします。 プロジェクトが作成されたら、Pagesフォルダーを開き、Index.razorファイルを探します。ここに、Blazorコンポーネントが追加され、ファイルアップロードと変換の処理が行われるコードが書かれます。 IronXLのインストール コードを書き始める前に、IronXLライブラリをインストールする必要があります。 Visual Studioのパッケージマネージャーコンソールを開き、次のコマンドを実行します。 Install-Package IronXL.Excel このコマンドは、BlazorプロジェクトにIronXLライブラリをインストールします。 これでコードを書き始める準備が整いました! ファイルアップロードコンポーネントの作成 まず、ユーザーが既存のExcelファイルをアップロードできるように基本的なファイルアップロードコンポーネントを作成します。その後、Microsoft.AspNetCore.Components.Forms名前空間からInputFileコンポーネントが追加されます。 次のコードを@page ""の行の下にIndex.razorファイルに追加します。 @using Microsoft.AspNetCore.Components.Forms @using IronXL @using System.IO @using System.Threading.Tasks <div class="container"> <h3>File Upload</h3> <InputFile class="button" OnChange="@OnInputFileChange" accept=".xls,.xlsx,.xlsm,.xltx,.csv,.tsv" /> <h3>Selected File: @originalFileName</h3> <h3 style="color:bisque">Is File converted: <span>@message</span></h3> </div> このコードは、ボタンとファイル変換の状況を表示するメッセージエリアを備えたファイルアップロードコンポーネントを設定します。 InputFileコンポーネントのaccept属性は、受け入れるファイル形式を指定します。 ファイル変換コードの作成 次に、ファイルのアップロードと変換を処理するコードを書きます。 このタスクを達成するために、IronXL、Blazor、C#の組み合わせを使用します。 IronXLを使用してCSVをExcelファイルに変換できます。 次のコードを先ほど追加したdiv要素の下にIndex.razorファイルに追加します。 @code { private string originalFileName; private string message = ""; private async Task OnInputFileChange(InputFileChangeEventArgs e) { var file = e.File; originalFileName = file.Name; try { // Read the uploaded file into a memory stream using var memoryStream = new MemoryStream(); await file.OpenReadStream().CopyToAsync(memoryStream); // Load the workbook using IronXL WorkBook workBook = WorkBook.Load(memoryStream); // Save the workbook as a CSV file string outputPath = "sample.csv"; workBook.SaveAsCsv(outputPath); message = "Conversion completed!"; } catch (Exception ex) { message = $"An error occurred: {ex.Message}"; } } } このコードは、ExcelスプレッドシートがInputFileコンポーネントを使用してアップロードされたときにトリガーされるOnInputFileChangeと呼ばれるプライベートメソッドを定義します。 ExcelはXLSまたはXLSX形式である可能性があります。 コードはアップロードされた基本的なExcelファイルを読み込み、WorkBookオブジェクトに読み込み、そしてWorkBookをCSVファイルとして保存します。変換の状態は、ページ上のメッセージエリアに表示されます。 コードの内訳 まずは、完全なコードを見てみましょう: @page "/" @using Microsoft.AspNetCore.Components.Forms @using IronXL @using System.IO @using System.Threading.Tasks <style> body{ background-color: skyblue } .container { max-width: 800px; margin: 0 auto; font-family: Arial, sans-serif; } h3 { margin-top: 30px; font-size: 30px; margin-bottom: 30px; } .button { background-color: #4CAF50; border: none; color: white; padding: 15px 32px; text-align: center; text-decoration: none; display: inline-block; font-size: 16px; margin: 15px 0; cursor: pointer; } span { font-size: 20px; } </style> <div class="container"> <h3>File Upload</h3> <InputFile class="button" OnChange="@OnInputFileChange" accept=".xls,.xlsx,.xlsm,.xltx,.csv,.tsv" /> <h3>Selected File: @originalFileName</h3> <h3 style="color:bisque">Is File converted: <span>@message</span></h3> </div> @code { private string originalFileName; private string message = ""; private async Task OnInputFileChange(InputFileChangeEventArgs e) { var file = e.File; originalFileName = file.Name; try { // Read the uploaded file into a memory stream using var memoryStream = new MemoryStream(); await file.OpenReadStream().CopyToAsync(memoryStream); // Load the workbook using IronXL WorkBook workBook = WorkBook.Load(memoryStream); // Save the workbook as a CSV file string outputPath = "sample.csv"; workBook.SaveAsCsv(outputPath); message = "Conversion completed!"; } catch (Exception ex) { message = $"An error occurred: {ex.Message}"; } } } さらにコードを細かく見ていきましょう: ファイルがアップロードされるとOnInputFileChangeメソッドがトリガーされ、InputFileChangeEventArgsオブジェクトが渡されます。 このオブジェクトには、アップロードされたファイルの名前やサイズなどの情報が含まれています。 オリジナルのファイル名をページに表示するために、originalFileNameという変数に格納します。 try-catchブロック内で、新しいMemoryStreamオブジェクトを作成し、アップロードされたファイルの内容を読み込みます。 usingステートメントは、メモリストリームがもう必要なくなったときに適切に破棄されることを保証します。 awaitキーワードを使用して、アップロードされたファイルの内容を非同期でメモリストリームにコピーします。 これにより、ファイルを読み込んでいる間もこのアプリケーションが応答性を保ちます。 次に、WorkBook.Loadメソッドを使用して、メモリストリームの内容をWorkBookオブジェクトに読み込みます。 このオブジェクトはシート、セル、データを含むExcel全体のワークブックを表します。 変換されたCSVファイルの出力ファイル名を指定します。このケースでは、"sample.csv"という名前を使用しています。 WorkBookオブジェクトのSaveAsCsvメソッドを使用して、指定された出力ファイル名でワークブックをCSVファイルとして保存します。 変換が成功すると、変換が完了したことを示すメッセージが表示されます。 エラーが発生した場合は、例外をキャッチしてエラーメッセージを表示します。 アプリケーションのテスト Blazorアプリケーションが完成したので、テストする時が来ました! F5を押して、Visual Studioでアプリケーションを実行します。 アプリケーションが実行されると、ページ上にファイルアップロードボタンが表示されるはずです。 Blazorアプリケーションの実行 ボタンをクリックし、アップロードするExcelファイルを選択します。 InputFileコンポーネントのaccept属性にリストされているファイル形式が受け付けられます。 Excelファイルの選択 ファイルを選択した後、アプリケーションはファイルを読み込み、IronXLを使用してCSV形式に変換し、指定された出力ファイル名で変換後のファイルを保存します。 変換の状態とオリジナルのファイル名を表示するメッセージが表示されるはずです。 変換の状態 ドキュメントのフォーマットが完全に変更されました。 IronXLを使用してExcelファイルをCSV形式にエクスポートできるBlazorアプリケーションの構築に成功しました。 次のスクリーンショットは、このプログラムの出力を示しています。 出力されたExcelファイル 結論 このチュートリアルでは、IronXLを使用してExcelファイルをCSV形式にエクスポートできるBlazorアプリケーションを構築する方法を示しました。 ファイルアップロードコンポーネントの作成、ファイルのアップロード処理、およびIronXLの強力な機能を使用したExcelファイルのCSV形式への変換の方法を説明しました。 BlazorアプリケーションにIronXLを組み込むことで、Excel関連の様々なタスクを簡単に扱うことができ、データのインポート、操作、エクスポートが可能になります。 これは、プロジェクトに多くの可能性を開き、ユーザーによりリッチな体験を提供するのに役立ちます。 IronXLライブラリを使用してBlazorでCSVをExcelに変換できます。 IronXLは無料トライアルを提供しており、購入を検討する前にその機能と性能を試すことができます。 トライアル期間終了後、IronXLのライセンスは$799から開始します。 よくある質問 BlazorアプリケーションでExcelファイルをCSV形式に変換するにはどうすればよいですか? IronXLを使用して、BlazorアプリケーションでExcelファイルをCSV形式に変換できます。まず、Blazorサーバープロジェクトをセットアップし、パッケージマネージャーコンソールを介してIronXLをインストールし、`InputFile`コンポーネントを使用してファイルアップロードコンポーネントを作成します。次に、Excelファイルをメモリストリームに読み込み、IronXLを使用してWorkBookオブジェクトにロードし、SaveAsCsvメソッドを使用してCSVとしてエクスポートします。 BlazorアプリケーションでIronXLを使用する目的は何ですか? IronXLは、Microsoft OfficeやExcel Interopを必要とせずにExcelデータを扱うためにBlazorアプリケーションで使用されます。これは、開発者がプログラム的にExcelデータを読み取り、操作、およびエクスポートできるようにします。データのインポート、書式設定、ExcelファイルのCSVなどのフォーマットへの変換などの機能を可能にします。 ExcelファイルをCSVに変換するBlazorアプリケーションをテストできますか? はい、Visual Studioで実行してBlazorアプリケーションをテストできます。ファイルアップロードコンポーネントを使用してExcelファイルを選択します。このアプリケーションは、選択したファイルをIronXLを使用してCSVに変換し、変換状況に関するフィードバックを提供します。 Excel InteropよりもIronXLを使用する利点は何ですか? Excel InteropよりもIronXLを使用することで、Microsoft OfficeがインストールされていなくてもExcelファイルを操作できる、複数のExcelフォーマット(XLS、XLSX、CSV)のサポート、.NETアプリケーションとの互換性が向上し、パフォーマンスと展開の容易さが得られるなどの利点があります。 BlazorプロジェクトにIronXLをインストールするにはどうすればよいですか? BlazorプロジェクトにIronXLをインストールするには、Visual Studioでパッケージマネージャーコンソールを開き、Install-Package IronXL.Excelコマンドを実行します。これにより、ライブラリがインストールされ、Excelファイルをプログラム的に操作できるようになります。 Blazorでの変換に対応したIronXLのExcelファイル形式は何ですか? IronXLは、Blazorでの変換に対応したさまざまなExcelファイル形式をサポートしています。これには、.xls、.xlsx、.xlsm、.xltx、および.csvが含まれ、アプリケーション内でのExcelデータの柔軟な処理を可能にします。 Blazorアプリケーションでファイルアップロードコンポーネントを作成するにはどうすればよいですか? Blazorアプリケーションでファイルアップロードコンポーネントを作成するには、Microsoft.AspNetCore.Components.Formsの`InputFile`コンポーネントを使用します。このコンポーネントにより、ユーザーがファイルをアップロードでき、そのファイルをExcelからCSVへの変換などのタスクに必要なIronXLを使用して処理できます。 IronXLの無料トライアルはありますか? はい、IronXLは購入前にその機能と能力を試すことができる無料トライアルを提供しています。トライアル期間終了後は、プロジェクトのニーズに応じたさまざまなライセンスオプションを選択できます。 Curtis Chau 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 関連する記事 公開日 10月 27, 2025 C#でExcelピボットテーブルを作成する方法 この明確なステップバイステップガイドを使用して、C# InteropとIronXLを使用してExcelでピボットテーブルを作成する方法を学びましょう。 詳しく読む 公開日 10月 27, 2025 C#で列ヘッダー付きのDataGridViewをExcelにエクスポートする方法 IronXLライブラリを使用したステップバイステップのC#チュートリアルで、列ヘッダーを保持しながらDataGridViewデータをExcelにエクスポートする方法を学びましょう。 詳しく読む 公開日 10月 27, 2025 .NET Core CSVリーダーとしてのIronXLの使用方法 実用的な例とともにIronXLを.NET Core CSVリーダーとして効果的に使用する方法を学びましょう。 詳しく読む {"11":"C#\u3092\u4f7f\u7528\u3057\u3066Excel\u3092DataGridView\u306b\u5909\u63db\u3059\u308b\u65b9\u6cd5<\/S>"}{"12":"C#\u3092\u4f7f\u7528\u3057\u...
公開日 10月 27, 2025 C#でExcelピボットテーブルを作成する方法 この明確なステップバイステップガイドを使用して、C# InteropとIronXLを使用してExcelでピボットテーブルを作成する方法を学びましょう。 詳しく読む
公開日 10月 27, 2025 C#で列ヘッダー付きのDataGridViewをExcelにエクスポートする方法 IronXLライブラリを使用したステップバイステップのC#チュートリアルで、列ヘッダーを保持しながらDataGridViewデータをExcelにエクスポートする方法を学びましょう。 詳しく読む
公開日 10月 27, 2025 .NET Core CSVリーダーとしてのIronXLの使用方法 実用的な例とともにIronXLを.NET Core CSVリーダーとして効果的に使用する方法を学びましょう。 詳しく読む