C#에서 Excel을 Open XML로 변환하는 방법

Pilalo Jovanitho·2026년 9월 10일

Excel 파일은 데이터 관리와 분석에 널리 사용되는 형식이지만, 다른 소프트웨어와의 호환성이나 데이터 교환을 위해 Open XML 형식으로 변환해야 할 필요가 있습니다. Open XML은 Microsoft가 개발한 XML 기반 파일 형식으로, 다양한 애플리케이션에서 지원되어 데이터 교환에 유용합니다.

이 글에서는 C#에서 Excel 파일을 Open XML 형식으로 변환하는 방법을 살펴보겠습니다.

Open XML 형식 이해하기

Open XML(Office Open XML)은 Microsoft Office 2007 이후 버전에서 사용되는 파일 형식으로, .xlsx 확장자를 가진 Excel 파일도 이 형식에 기반합니다. XML 기반이므로 텍스트 편집기로 내용을 확인할 수 있으며, 다양한 플랫폼에서 데이터를 읽고 처리할 수 있다는 장점이 있습니다.

변환 방법 개요

C#에서 Excel과 Open XML 간 변환을 수행하는 방법은 여러 가지가 있습니다. Microsoft에서 제공하는 Open XML SDK를 직접 사용하거나, 서드파티 라이브러리를 활용할 수 있습니다.

여기서는 Workbook 객체를 사용하여 변환하는 방법을 살펴보겠습니다.

라이브러리 설치

NuGet 패키지 관리자를 통해 라이브러리를 설치합니다:

PM> Install-Package Spire.XLS

Excel을 Open XML로 변환하기

Excel 파일을 Open XML 형식으로 변환하는 과정은 다음과 같습니다:

  1. Workbook 클래스의 인스턴스를 초기화합니다.
  2. LoadFromFile 메서드를 사용하여 Excel 파일을 로드합니다.
  3. SaveAsXml 메서드를 호출하여 Open XML 형식으로 저장합니다.

C# 코드 예제

using Spire.Xls;

namespace ConvertExcelToOpenXML
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Workbook 클래스의 인스턴스 생성
            Workbook workbook = new Workbook();

            // Excel 파일 로드
            workbook.LoadFromFile("Sample.xlsx");

            // Open XML 형식으로 저장
            workbook.SaveAsXml("ExcelToXML.xml");

            // 리소스 해제
            workbook.Dispose();
        }
    }
}

Open XML을 Excel로 변환하기

반대 방향의 변환도 유사한 방식으로 수행됩니다. Open XML 파일을 로드한 후 Excel 형식으로 저장하면 됩니다.

변환 단계

  1. Workbook 클래스의 인스턴스를 초기화합니다.
  2. LoadFromXml 메서드를 사용하여 Open XML 파일을 로드합니다.
  3. SaveToFile 메서드를 호출하여 Excel 형식으로 저장합니다.

C# 코드 예제

using Spire.Xls;

namespace ConvertOpenXMLToExcel
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Workbook 클래스의 인스턴스 생성
            Workbook workbook = new Workbook();

            // Open XML 파일 로드
            workbook.LoadFromXml("ExcelToXML.xml");

            // Excel 형식으로 저장
            workbook.SaveToFile("XMLToExcel.xlsx", ExcelVersion.Version2016);

            // 리소스 해제
            workbook.Dispose();
        }
    }
}

변환의 활용 사례

Excel을 Open XML로 변환하는 것은 다음과 같은 상황에서 유용합니다:

  • 데이터 교환: Open XML은 다양한 애플리케이션에서 지원되므로 시스템 간 데이터 교환이 용이합니다.
  • 장기 데이터 보존: XML 기반 형식은 텍스트 기반이므로 데이터 보존에 적합합니다.
  • 데이터 처리 자동화: XML 형식은 프로그래밍 방식으로 파싱하고 처리하기 용이합니다.

반대로 Open XML을 Excel로 변환하는 것은 다음과 같은 경우에 필요합니다:

  • 데이터 분석 도구 활용: Excel의 피벗 테이블, 차트 등의 기능을 사용하기 위해
  • 사용자 친화적인 인터페이스: Excel의 GUI를 통해 데이터를 편집하고 확인하기 위해

라이브러리 선택 시 고려사항

Excel 파일 처리를 위한 라이브러리를 선택할 때는 다음 사항을 고려해야 합니다:

  1. Microsoft Office 의존성: 일부 라이브러리는 Microsoft Office가 설치되어 있어야 작동합니다. 서버 환경에서는 Office 설치가 어려울 수 있으므로 독립적으로 작동하는 라이브러리를 선택하는 것이 좋습니다.

  2. 라이선스: 무료 버전과 상용 버전의 기능 제한을 확인해야 합니다. 무료 버전의 경우 행 수나 시트 수에 제한이 있을 수 있습니다.

  3. 지원하는 형식: .xls, .xlsx, .xlsm 등 다양한 Excel 형식을 지원하는지 확인합니다.

  4. 성능: 대용량 파일을 처리할 때의 성능을 고려해야 합니다.

마무리

C#에서 Excel과 Open XML 형식 간의 변환은 적절한 라이브러리를 사용하면 간단하게 구현할 수 있습니다. LoadFromFile과 SaveAsXml, 또는 LoadFromXml과 SaveToFile 메서드를 조합하여 양방향 변환이 가능합니다.

프로젝트 요구사항에 따라 적절한 라이브러리와 변환 방향을 선택하여 데이터 관리 워크플로우를 구축하시기 바랍니다.

0개의 댓글