C#でExcelとXMLの相互転換を実現する方法

日常業務では、データの分析と処理のためにデータをExcelに保存してから、クロスプラットフォームのデータ交換のためにデータをXML形式に変換する必要があります。インターネット上でExcelをXMLに変換するほとんどの方法は、ExcelをデータベースのDataSetに読み込んでから、XMLに書き込むことです。コードも煩雑であり、データベースをインストールするためのオペレーティング環境が必要です。ようやくExcelとXMLの相互転換を実現できる簡単な方法を見つけました、オペレーティング環境にはデータベースやMicrosoft Excelのインストールも必要ありません、必要なのはたった3行のコードです、今回は皆さんにシェアしましょう。

コンポーネント/ツール:

Free Spire.XLS

手順:

  1. コンポーネントをダウンロードしてインストール完了したら、Visual Studioプロジェクトの参照にインストールパスの下のBinフォルダーに.dllファイルを追加してください。
  2. 詳細なコードについて

必要な名前空間:

using Spire.Xls;

以下は、核心とするコードを紹介します。

ExcelをXMLへ転換する:

using Spire.Xls;

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

 

namespace Excel_XML_conversion

{

    class Program

    {

        static void Main(string args)

        {

            Workbook workbook = new Workbook();

            workbook.LoadFromFile("Sample.xlsx");

            workbook.SaveAsXml("result.xml");           

        }

    }

}

生成されたxmlドキュメントは以下のようになります:

f:id:uha_noki:20210927162418p:plain

XMLをExcelへ転換する:

using Spire.Xls;

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

 

namespace Excel_XML_conversion

{

    class Program

    {

        static void Main(string args)

        {         

            Workbook workbook1 = new Workbook();

            workbook1.LoadFromXml("result.xml");

            workbook1.SaveToFile("test.xlsx", ExcelVersion.Version2013);

        }

    }

}

生成されたExcelドキュメントは以下のようになります:

f:id:uha_noki:20210927162403p:plain

ExcelとXMLの相互変換の方法は以上です、読んでいただき、ありがとうございました!