C#에서 Excel을 HTML로 변환하는 방법
Source: Dev.to
소개
웹에서 표 형식 데이터를 표시하는 것은 종종 어려운 과제입니다. Excel 스프레드시트는 데이터 조직 및 분석에 강력하지만, 기본 .xlsx 또는 .xls 형식은 웹 브라우저에서 직접 렌더링할 수 없습니다. C#을 사용해 Excel을 HTML로 변환하면 풍부한 Excel 데이터와 웹 친화적인 형식 사이의 격차를 메울 수 있습니다. 이 가이드에서는 Spire.XLS for .NET을 이용해 Excel 데이터를 깔끔하고 접근성 높은 HTML로 변환하는 방법을 보여줍니다.
왜 Excel을 HTML로 변환할까?
- 웹 표시 – HTML은 웹의 기본 언어이므로 Excel이 클라이언트에 설치되지 않아도 웹 애플리케이션, 대시보드 또는 보고서에 데이터를 손쉽게 삽입할 수 있습니다.
- 크로스‑플랫폼 호환성 – HTML은 모든 브라우저와 운영 체제에서 동작하므로 누구나 데이터를 볼 수 있습니다.
- 공유 용이 – 단순 HTML 파일은 보기만 필요할 때 Excel 스프레드시트보다 배포가 더 편리합니다.
- 클라이언트‑사이드 의존성 감소 – Excel 뷰어나 플러그인이 필요 없으므로 배포가 간단해지고 사용자 경험이 향상됩니다.
- 일반적인 사용 사례 – 온라인 보고서 생성, 데이터 기반 웹 페이지, 제품 카탈로그 제작, 혹은 금융 데이터를 웹 기반 포트폴리오 트래커에 통합하는 경우 등.
Spire.XLS for .NET 설치
Spire.XLS를 C# 프로젝트에 추가하는 가장 쉬운 방법은 NuGet을 이용하는 것입니다:
Install-Package Spire.XLS
또는 NuGet Package Manager GUI에서 Spire.XLS를 검색해 설치할 수도 있습니다.
Excel 파일을 HTML로 변환하기
프로젝트 설정
- 새 C# 프로젝트(예: 콘솔 애플리케이션)를 생성합니다.
- Spire.XLS에 대한 참조를 추가합니다(
using Spire.Xls;).
핵심 단계
- 워크북 로드 –
Workbook객체를 인스턴스화하고LoadFromFile()을 호출합니다. - HTML로 저장 –
FileFormat.Html열거형을 사용해SaveToFile()을 실행합니다.
전체 코드 예제
using Spire.Xls;
using System;
using System.IO;
namespace ExcelToHtmlConverter
{
class Program
{
static void Main(string[] args)
{
// Path to your input Excel file
string excelFilePath = "SampleData.xlsx";
// Path for the output HTML file
string htmlFilePath = "OutputExcel.html";
// Create a Workbook object
Workbook workbook = new Workbook();
try
{
// Load the Excel file
workbook.LoadFromFile(excelFilePath);
// Save the entire workbook to an HTML file
workbook.SaveToFile(htmlFilePath, FileFormat.Html);
Console.WriteLine($"Successfully converted '{excelFilePath}' to '{htmlFilePath}'.");
}
catch (Exception ex)
{
Console.WriteLine($"An error occurred: {ex.Message}");
}
finally
{
// Dispose of the workbook object to release resources
workbook.Dispose();
}
Console.ReadKey(); // Keep console open
}
}
}
코드 설명
Workbook workbook = new Workbook();– 새 워크북 인스턴스를 초기화합니다.workbook.LoadFromFile(excelFilePath);– 기존 Excel 파일을 로드합니다.workbook.SaveToFile(htmlFilePath, FileFormat.Html);– 워크북을 HTML 문서로 변환하고 저장합니다.
특정 워크시트를 HTML로 저장하기
특정 시트만 필요하다면 workbook.Worksheets[index] 로 접근한 뒤, 선택적 HTML 설정과 함께 SaveToHtml()을 사용합니다.
// Get the first worksheet
Worksheet sheet = workbook.Worksheets[0];
// Set HTML options (e.g., embed images)
HTMLOptions options = new HTMLOptions
{
ImageEmbedded = true // Embeds images directly into the HTML
};
// Save the sheet to an HTML file with options
using (FileStream fileStream = new FileStream("OutputSheet.html", FileMode.Create))
{
sheet.SaveToHtml(fileStream, options);
}
이 방법은 이미지가 HTML에 직접 포함된 독립형 페이지를 생성하므로, 별도 웹 페이지로 활용하기에 적합합니다.
결론
C#에서 Excel 파일을 HTML로 변환하는 기술은 데이터를 웹에서 손쉽게 접근 가능하도록 만드는 강력한 방법입니다. Spire.XLS for .NET은 전체 워크북이든 개별 워크시트이든 변환 과정을 간소화하고 다양한 옵션을 제공합니다. 이 가이드의 단계들을 따라 하면 Excel 데이터를 웹 애플리케이션, 보고서 및 대시보드에 통합하여 크로스‑플랫폼 호환성과 사용자 경험을 크게 향상시킬 수 있습니다. 지금 바로 프로젝트에 프로그래밍 방식 Excel‑to‑HTML 변환을 적용해 보세요.