C#でExcelファイルをXMLに変換する方法
Microsoft Excelは、データの整理、分析、および視覚化における効果的であることで広く知られている多機能なスプレッドシートアプリケーションです。 それは、ユーザーがテキスト、数字、日付、数式などの様々な入力を個々のセルに入力できるグリッドに似て機能し、データは行と列に整理されて管理が容易になります。 その強力な数式および関数計算機能により、ユーザーは広範囲にわたる論理的、統計的、および数学的なタスクを実行できます。
Excelはデータを管理および評価するためのツールを提供し、データを視覚的に表現するグラフやチャートを作成することもできます。 複数のユーザーが同時にファイルを編集および共有できるため、共同作業を促進します。 これにより、マクロ、VBA、およびアドインを使用してカスタマイズおよび自動化することが可能で、さまざまな業務需要に適応できます。 Excelのワークブッククラスは、銀行業、教育、研究、ビジネス分析など、さまざまな分野で使用されています。 それは、データを整理、評価および意思決定に役立てるための不可欠なツールです。 この記事では、C#でExcelをXMLに変換する方法を学びます。
Convert Excel Files (XLS) to XML Format in C
- Visual Studioでコンソールプロジェクトを作成します。
- IronXLライブラリをインストールします。
- 必要なIronXLのオブジェクトを初期化します。
- 新しいExcelファイル(XLSまたはXLSX)を作成するか、作成したオブジェクトにExcelファイルをロードします。
XMLSaveOptionsクラス内のSaveAsXmlメソッドを使用して、読み込んだファイルを XML に変換します。- IronXLオブジェクトを破棄します。
using IronXL;
class Program
{
static void Main()
{
// Step 2: Install IronXL library
// Step 3: Initialize IronXL object
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
// Step 4: Create or load Excel file
// Create a new Excel file
WorkSheet worksheet = workbook.CreateWorkSheet("Sheet1");
worksheet["A1"].Value = "Hello";
worksheet["B1"].Value = "World";
// Or load an existing Excel file
workbook = WorkBook.Load("path_to_excel_file.xlsx");
// Step 5: Convert Excel to XML
XMLSaveOptions saveOptions = new XMLSaveOptions();
workbook.SaveAsXml("path_to_output_xml_file.xml", saveOptions);
// Step 6: Dispose of the IronXL objects
worksheet.Dispose();
workbook.Dispose();
}
}
using IronXL;
class Program
{
static void Main()
{
// Step 2: Install IronXL library
// Step 3: Initialize IronXL object
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
// Step 4: Create or load Excel file
// Create a new Excel file
WorkSheet worksheet = workbook.CreateWorkSheet("Sheet1");
worksheet["A1"].Value = "Hello";
worksheet["B1"].Value = "World";
// Or load an existing Excel file
workbook = WorkBook.Load("path_to_excel_file.xlsx");
// Step 5: Convert Excel to XML
XMLSaveOptions saveOptions = new XMLSaveOptions();
workbook.SaveAsXml("path_to_output_xml_file.xml", saveOptions);
// Step 6: Dispose of the IronXL objects
worksheet.Dispose();
workbook.Dispose();
}
}
Imports IronXL
Friend Class Program
Shared Sub Main()
' Step 2: Install IronXL library
' Step 3: Initialize IronXL object
Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
' Step 4: Create or load Excel file
' Create a new Excel file
Dim worksheet As WorkSheet = workbook.CreateWorkSheet("Sheet1")
worksheet("A1").Value = "Hello"
worksheet("B1").Value = "World"
' Or load an existing Excel file
workbook = WorkBook.Load("path_to_excel_file.xlsx")
' Step 5: Convert Excel to XML
Dim saveOptions As New XMLSaveOptions()
workbook.SaveAsXml("path_to_output_xml_file.xml", saveOptions)
' Step 6: Dispose of the IronXL objects
worksheet.Dispose()
workbook.Dispose()
End Sub
End Class
上記のコードでは、まずIronXLライブラリをインストールします。 次に、 IronXLオブジェクトを初期化し、Excelファイルを作成または読み込みます。最後に、SaveAsXmlメソッドを使用して、読み込んだファイルをXMLに変換します。 使用後にIronXLオブジェクトを破棄することを忘れないでください。
IronXLとは
IronXLと呼ばれる強力な.NETフレームワークExcelライブラリは、C#、VB.NETなど for .NET言語で記述されたExcelを扱うことを容易にするために作成されました。 それはXLSおよびXLSXファイル形式と互換性があります。 このライブラリを使用することで、開発者はより迅速かつ簡単にExcelスプレッドシートを作成、読み取り、編集、生成できます。 また、多数のツールと機能が利用可能です。
IronXLの主な機能と特性には次のものがあります:
*データ処理: IronXLを使用すると、Excelスプレッドシート内のデータの読み取り、書き込み、操作が簡単に行えます。 2次元配列を使用してセルの値を取得することができ、数式、計算、データの書式設定も可能です。
- Excelファイルの作成と変更:開発者は、新しいExcelファイルの作成や既存のファイルの変更に加え、ワークシートの追加、削除、管理を行うことができます。さらに、DLLファイルを使用してさまざまなExcelコンポーネントと通信することも可能です。 *汎用性と互換性:* IronXL はクロスプラットフォームの相互運用性により、さまざまなアプリケーション シナリオで使用でき、Xamarin、 .NET Core、 .NET Frameworkなどの複数 for .NETプラットフォームと統合できます。 従来のExcel形式と最新のExcel形式の両方をサポート:古いXLS Excel形式と、より新しいXLSX Excel形式の両方をサポートしています。 Excel 2007以降のXMLベースの形式(XLSX)だけでなく、Excel 97–2003の古いExcelファイル形式(XLS)も処理できます。 有用性:分かりやすい属性と関数を備えたシンプルなAPIを提供することで、このライブラリは、経験レベルの異なる開発者にとってExcel関連の作業へのアクセス性を向上させます。 データ抽出とエクスポート: IronXLは、Excelファイルからのデータ抽出と、ExcelデータをXML、新しいDataTable、プレーンテキストなどの複数の形式にエクスポートすることを容易にし、データベースや他のシステムとのインターフェースを容易にします。 サポートとドキュメント: IronXLは、開発者がExcelベースのアクティビティにライブラリを使用する際に役立つ豊富なチュートリアル、ドキュメント、およびサポートを提供しています。 自動化と効率化:** IronXLはExcelの手順を自動化することで、ユーザーがデータ駆動型の効率的なアプリケーションを構築し、生産性を向上させ、手作業に費やす時間を削減できるようにします。 *統合とカスタマイズ: Excel のデータ選択をさまざまな形式にエクスポートすることで、パーソナライズされたレポートやデータ駆動型ソリューションの作成が容易になります。 また、データベースや他のシステムとうまく連携します。
フィナンス、データ分析、報告、ビジネスインテリジェンス、ソフトウェア開発など、さまざまな分野でIronXLが利用されています。 データ操作とExcel統合を組み合わせることで、プログラマーはExcelファイルを扱い、信頼性の高いソリューションを作成できます。 詳細はこちらのリンクをご覧ください。
新しいVisual Studioプロジェクトを作成
Visual Studioのコンソールプロジェクトの設定は簡単です。 コンソールアプリケーションを作成するには、次の手順に従ってください:
- Visual Studioを起動します。 コンピュータにVisual Studioがインストールされていることを確認してください。
-
新しいプロジェクトを作成します: ファイル > 新規作成 > プロジェクトを選択します。

- '新しいプロジェクトを作成'ボックスの左側から、お好みのプログラミング言語(例:C#)を選択します。
- 利用可能なプロジェクトテンプレートのリストから、"コンソールアプリ"または"コンソールアプリ(.NET Core)"テンプレートを選択します。
-
[名前]フィールドにプロジェクトの名前を指定します。

- プロジェクトを保存する場所を選択します。
-
"作成"をクリックして、新しいコンソールアプリケーションプロジェクトの作業を開始します。

IronXLライブラリをインストールする
IronXLライブラリをインストールするには、次の手順に従います:
-
IronXLライブラリをインストールします。これは次のステップに必要です。 NuGet パッケージマネージャー コンソールで次のコマンドを使用します:
Install-Package IronXLInstall-Package IronXLSHELL
-
もう一つのアプローチとして、NuGet パッケージマネージャーを使用して"IronXL"パッケージを検索します。 検索結果の中から適切なIronXLのNuGetパッケージを選択します。

Convert Excel File to XML in C
IronXLのSaveAsXml関数を使用すると、ExcelファイルからXMLファイル形式でデータを保存できます。
IronXLでC#のSaveAsXml関数を使用する方法の例を以下に示します。
using IronXL;
class Program
{
static void Main(string[] args)
{
// Specify the path to your existing Excel file
string excelFilePath = "path_to_excel_file.xlsx";
// Specify the path to where the resulting XML file should be saved
string xmlFilePath = "path_to_output_xml_file.xml";
// Load Excel file using IronXL
WorkBook workbook = WorkBook.Load(excelFilePath);
// Save Excel data as XML
workbook.SaveAsXml(xmlFilePath);
Console.WriteLine("Excel data saved as XML successfully at: " + xmlFilePath);
}
}
using IronXL;
class Program
{
static void Main(string[] args)
{
// Specify the path to your existing Excel file
string excelFilePath = "path_to_excel_file.xlsx";
// Specify the path to where the resulting XML file should be saved
string xmlFilePath = "path_to_output_xml_file.xml";
// Load Excel file using IronXL
WorkBook workbook = WorkBook.Load(excelFilePath);
// Save Excel data as XML
workbook.SaveAsXml(xmlFilePath);
Console.WriteLine("Excel data saved as XML successfully at: " + xmlFilePath);
}
}
Imports IronXL
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Specify the path to your existing Excel file
Dim excelFilePath As String = "path_to_excel_file.xlsx"
' Specify the path to where the resulting XML file should be saved
Dim xmlFilePath As String = "path_to_output_xml_file.xml"
' Load Excel file using IronXL
Dim workbook As WorkBook = WorkBook.Load(excelFilePath)
' Save Excel data as XML
workbook.SaveAsXml(xmlFilePath)
Console.WriteLine("Excel data saved as XML successfully at: " & xmlFilePath)
End Sub
End Class
結果のXMLファイルを保存するには、"path_to_output_xml_file.xml"を適切な場所に、"path_to_excel_file.xlsx"を実際のExcelファイルのパスに置き換えます。
このコードサンプルは、Excel ファイルを読み込み、 IronXLが提供する SaveAsXml 関数を使用して、行と列を手動でループして XML を構造化することなく、Excel ファイルのデータを XML 形式に変換します。 このメソッドは内部でExcelデータをXML形式に変換し、それを指定されたXMLファイルに保存します。
XMLファイルを保存する際にディレクトリに書き込むための必要な権限を持っていることを確認してください。元のExcelファイルの内容とレイアウトが、結果のXMLの種類と構造に影響を与えることがあります。
入力ファイル:

結果:

コードの詳細は、こちらのコード例を参照してください。
結論
Excel ファイルから XML 形式にデータをエクスポートする簡単で効率的な方法は、IronXL の SaveAsXml 関数を使用することです。 このメソッドを使用すると、Excelデータを手動で行とセルを反復処理してXML形式に変換する必要がなくなります。 IronXLは、この機能を提供する.NETライブラリです。
IronXLのC#関数SaveAsXmlを利用することで、ユーザーはExcelデータをXML形式に簡単かつ迅速に変換できます。 IronXLは、非商業利用の制限がある無料のコミュニティエディションを提供しています。 IronXLの有料版は、サブスクリプションまたは永久ライセンスモデルで利用可能で、価格は$799から始まります。 この有料版は、強化された機能、サポート、完全な機能を提供します。 ライセンスに関する最新情報は、IronXLのウェブサイトを参照してください。 Iron Software製品の詳細については、こちらのページをご覧ください。
よくある質問
C# で Excel ファイルを XML に変換する方法は?
C# で Excel ファイルを XML に変換するには、IronXL ライブラリを使用できます。まず、Visual Studio コンソールプロジェクトをセットアップし、NuGet 経由で IronXL をインストールします。次に、Excel ファイルを読み込むか作成し、XMLSaveOptions クラス内の SaveAsXml メソッドを利用して変換を実行します。
Excel を XML に変換する際の IronXL の利点は何ですか?
IronXL は、Excel ファイルを XML に変換するプロセスを簡素化する簡単な API を提供します。手動でデータ イテレーションを行う必要がなく、.NET アプリケーションへの簡単な統合が可能です。
IronXL は変換において XLS および XLSX の両方の形式と互換性がありますか?
はい、IronXL は XLS および XLSX ファイル形式との互換性があり、さまざまな Excel ファイル操作と変換タスクに柔軟性を提供します。
Visual Studio プロジェクトにおける IronXL のインストール手順は何ですか?
Visual Studio で IronXL をインストールするには、NuGet パッケージ マネージャー コンソールで Install-Package IronXL コマンドを使用するか、NuGet パッケージ マネージャーで IronXL を検索し、そこから直接インストールできます。
使用後に IronXL オブジェクトを正しく破棄するにはどうすればよいですか?
IronXL オブジェクトを使用した後、それらが不要になったら Dispose メソッドを呼び出してリソースを解放し、適切に破棄することができます。
IronXL と互換性のあるプログラミング言語は何ですか?
IronXL は、C# や VB.NET などのさまざまな .NET 言語で使用でき、アプリケーションでの Excel 統合を必要とする開発者にとって柔軟な選択肢となります。
IronXL のライセンスオプションはどのようなものがありますか?
IronXL には、非商用利用に制限付きの無料のコミュニティ版があり、商用目的のためには、サブスクリプションまたは永久ライセンスを通じて強化された機能とサポートを備えた有料バージョンが利用可能です。
IronXL はどのようにして Excel から他の形式へのデータエクスポートを容易にしますか?
IronXL は、Excel ファイルから XML やプレーン テキストなどのさまざまな形式へのデータのシームレスな抽出とエクスポートを可能にし、データベースやその他のシステムとの統合を強化します。



