
C#에서 Excel 파일을 DataTable로 변환하는 방법
이 블로그는 Excel을 DataTable으로 변환하는 방법을 보여줍니다. 이 작업은 IronXL을 사용하여 C#에서 Excel 파일을 읽고 쓰는 간단하고 효율적인 방법으로 쉽게 수행할 수 있습니다.
1. IronXL
IronXL은 Excel 워크시트의 읽기, 쓰기, 데이터 내보내기, 조작을 단순화하기 위해 설계된 강력하고 사용자 친화적인 C# 라이브러리입니다. 개발자에게 프로젝트 내에서 Excel 스프레드시트를 작업하고 작업을 자동화하는 원활한 방법을 제공합니다.
IronXL을 사용하면 Excel 워크북, 워크시트 및 셀에서 데이터를 불러오고, 내보내고, 수정할 수 있습니다. 이 라이브러리는 기존의 XLS 형식과 최신 XLSX 형식을 모두 지원하여 다양한 Excel 버전과 호환됩니다.
라이브러리는 Excel 파일에서 새 워크북 생성, 셀에 데이터 읽기 및 쓰기, 형식 지정, 수식 처리, 심지어 차트 및 이미지 추출과 같은 다양한 작업을 수행할 수 있도록 간단한 API를 제공합니다. IronXL은 테이블, 범위, 명명된 범위와 같은 복잡한 데이터 구조 작업도 지원합니다.
2. 필수 조건
Excel 파일을 C#의 IronXL을 사용하여 DataTable로 변환하려면 몇 가지 필수 사항이 있습니다:
- 개발 환경: Visual Studio 또는 다른 C# IDE와 같은 호환되는 개발 환경을 설정해야 합니다.
- IronXL 라이브러리: IronXL 라이브러리를 다운로드하고 설치하세요. 이 라이브러리는 IronXL 공식 웹사이트에서 또는 Visual Studio의 NuGet 패키지 관리자를 통해 얻을 수 있습니다. C# 프로젝트에 IronXL 네임스페이스를 포함하여 그 클래스 및 메서드에 접근하세요.
- .NET Framework 또는 .NET Core: IronXL은 .NET Framework와 .NET Core를 모두 지원합니다. 프로젝트 요구 사항에 따라 컴퓨터에 적합한 버전이 설치되어 있는지 확인하십시오.
3. C#에서 새 프로젝트 생성하기
IronXL 라이브러리를 Excel 관련 작업에 사용하는 첫 번째 단계는 Visual Studio에서 .NET 프로젝트를 만드는 것입니다. Visual Studio의 모든 버전을 사용할 수 있지만, 최신 버전을 사용하는 것이 권장됩니다.
이 튜토리얼에서는 IronXL을 사용하는 방법을 보여주기 위해 콘솔 애플리케이션 프로젝트 템플릿을 사용할 것입니다.
새로운 프로젝트
프로젝트 유형을 선택한 후에는 프로젝트의 이름과 위치를 지정합니다. 또한, 프로젝트에 선호하는 프레임워크를 선택할 옵션이 있으며, 예를 들어 .NET Core 6을 선택할 수 있습니다.
프로젝트 구성
해당 솔루션이 생성된 후 Program.cs 파일에 접근하여 해당 파일에 코드를 입력하고 어플리케이션을 생성/실행할 수 있습니다.
Program.cs
4. IronXL 설치하기
IronXL 라이브러리는 여러 가지 방법으로 다운로드 및 설치할 수 있습니다. 다음과 같습니다:
- Visual Studio NuGet 패키지 사용
- Visual Studio 커맨드 라인 사용
4.1 Visual Studio NuGet 패키지 사용
Visual Studio의 NuGet 패키지 관리자를 열고 찾아보기 탭에서 IronXL을 검색하여 설치하세요.
검색 결과에서 IronXL을 찾았으면 선택하고 설치를 진행합니다. 설치가 완료되면 프로젝트에서 IronXL 라이브러리를 사용할 수 있습니다.
아래 스크린샷은 Visual Studio에서 NuGet 패키지 관리자를 여는 방법을 보여줍니다.
NuGet 패키지 매니저
검색 결과에서 IronXL:
IronXL
4.2 Visual Studio 커맨드 라인 사용
많은 개발자들이 명령어 인터페이스를 사용하여 패키지를 설치하는 것을 선호합니다. 명령줄을 사용하여 IronXL을 설치하려면 다음 단계를 따르세요:
- Visual Studio에서 도구 > NuGet 패키지 관리자 > 패키지 관리자 콘솔로 이동하세요.
- 패키지 관리자 콘솔 탭에서 다음 줄을 입력합니다:
이제 패키지는 현재 프로젝트에 다운로드 및 설치되어 사용 준비가 완료됩니다.
IronXL Install-Package
5. IronXL을 사용하여 Excel 데이터를 DataTable로 변환하기
C#에서 Excel 파일 스트림의 Excel 데이터를 DataTable으로 내보내는 것은 IronXL을 사용하여 쉽게 구현할 수 있습니다. 이 섹션에서는 IronXL을 사용하여 Excel 워크시트 데이터를 DataTable으로 변환하는 방법에 대해 설명합니다.
먼저, DataTable으로 변환하려는 데이터가 포함된 샘플 Excel 파일이 필요합니다. 데모를 위해 간단한 Excel 파일을 만들어야 합니다.
샘플 Excel
이제 코드 샘플을 살펴보겠습니다:
using IronXL;
using System;
using System.Data;
class Program
{
static void Main()
{
// Load the Excel workbook from a file
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Access the default worksheet in the workbook
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Convert the worksheet data to a DataTable
// Set the parameter to true to consider the first row as column headers
DataTable dataTable = workSheet.ToDataTable(true);
// Iterate over each row in the DataTable
foreach (DataRow row in dataTable.Rows)
{
// Print each column in the row
for (int i = 0; i < dataTable.Columns.Count; i++)
{
Console.Write($"{row[i]} \t");
}
Console.WriteLine(); // Move to the next line after printing each row
}
}
}Imports IronXL
Imports System
Imports System.Data
Module Program
Sub Main()
' Load the Excel workbook from a file
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
' Access the default worksheet in the workbook
Dim workSheet As WorkSheet = workBook.DefaultWorkSheet
' Convert the worksheet data to a DataTable
' Set the parameter to true to consider the first row as column headers
Dim dataTable As DataTable = workSheet.ToDataTable(True)
' Iterate over each row in the DataTable
For Each row As DataRow In dataTable.Rows
' Print each column in the row
For i As Integer = 0 To dataTable.Columns.Count - 1
Console.Write($"{row(i)}" & vbTab)
Next
Console.WriteLine() ' Move to the next line after printing each row
Next
End Sub
End Module위 코드에서 Excel 파일은 IronXL이 제공하는 WorkBook 메서드를 사용하여 WorkBook.Load 메서드를 통해 WorkSheet 객체로 로드되고, 첫 번째 워크시트 데이터를 엑세스합니다. 이 WorkSheet을 DataTable로 변환하기 위해, 데이터 변환 및 저장을 위해 workSheet.ToDataTable 메서드가 사용되어 새로운 DataTable 변수에 저장됩니다.
마지막으로, DataTable 데이터를 시각화를 위해 콘솔에 출력합니다.
DataTable로 데이터 내보내기 출력
6. 결론
C#에서 DataTable을 사용하면 응용 프로그램 내에서 Excel 데이터를 다루는데 강력하고 효율적인 솔루션을 제공합니다. IronXL과 같은 라이브러리를 활용하여 개발자는 Excel 데이터를 DataTable로 손쉽게 변환하고 C#의 잠재력을 최대한 활용할 수 있습니다.
이 튜토리얼에서는 IronXL의 기능과 C#과의 매끄러운 통합을 탐구했습니다. 우리는 Excel 파일을 다루기 위한 전제 조건, 즉 호환 가능한 개발 환경을 갖추고 IronXL 라이브러리를 설치하며 적절한 .NET Framework 또는 .NET Core 버전을 갖추는 것에 대해 논의했습니다.
Visual Studio에서 새 C# 프로젝트를 생성하는 과정과 NuGet 패키지 관리자 또는 Visual Studio 커맨드 라인을 통해 IronXL을 설치하는 과정을 거쳤습니다. 프로젝트에 IronXL이 성공적으로 통합된 후, 라이브러리의 사용하기 쉬운 API를 활용해 데이터를 DataTable로 내보내는 것을 시연했습니다.
Excel 파일을 로드하고, 원하는 워크시트를 엑세스하여 IronXL이 제공하는 ToDataTable 메서드를 활용하여 데이터를 추출하여 DataTable에 저장할 수 있었습니다. 마지막으로, 콘솔에 그 내용을 출력하여 DataTable을 시각화하는 방법을 보여주었습니다.
IronXL과 DataTable을 사용하여 C#에서 개발자는 Excel 데이터와 매끄럽게 상호작용하는 강력한 응용 프로그램을 구축하고 효율적인 데이터 처리, 분석 및 시각화를 가능하게 할 수 있습니다. 이 튜토리얼을 통해 얻은 지식을 바탕으로 이제 자신있게 Excel 워크시트를 C# 프로젝트에 통합하고 DataTable이 제공하는 광범위한 기능을 활용할 수 있습니다. IronXL에 대한 더 많은 튜토리얼은 튜토리얼 페이지를 방문하세요.

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.
관련 기사



