C#에서 DataTable을 Excel로 내보내기

Saad Aslam 2023년10월12일
  1. Visual Studio에서 참조 패키지 추가
  2. C#을 사용하여 DataTable을 Excel로 내보내기
C#에서 DataTable을 Excel로 내보내기

이 자습서에서는 C# 프로그래밍 언어로 데이터 테이블을 Excel 파일로 내보내는 방법을 설명합니다. 이 프로젝트를 진행하기 전에 참조를 추가하여 엑셀 파일을 만들고 내보내는 것이 필요합니다.

Visual Studio에서 참조 패키지 추가

ExcelMapper 패키지가 포함되어 다양한 Excel 기능을 수행합니다. 그렇게 하려면 아래 설명된 지침을 따르십시오.

  • Visual Studio,를 열고 Console Application,을 만들고 이름을 지정합니다.
  • 솔루션 탐색기 패널을 마우스 오른쪽 버튼으로 클릭하고 NuGet 패키지 관리를 선택합니다.
  • 이제 찾아보기 옵션을 클릭하고 ExcelMapper를 검색하여 설치합니다.

코드 예제를 통해 이해해 보겠습니다.

C#을 사용하여 DataTable을 Excel로 내보내기

시작하려면 다음 라이브러리를 가져옵니다.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using Spire.Xls;

이제 Workbook 개체의 새 인스턴스를 생성하고 Workbook이라는 이름으로 저장합니다.

Workbook workBook = new Workbook();
workBook.Worksheets.Clear();

Worksheet 클래스의 새 인스턴스를 포함하고 Worksheet라고 합니다.

Worksheet workSheet = workBook.Worksheets.Add("DataTableToExcel");

변수 이름이 DataTableDataTable 유형의 새 개체를 만듭니다.

DataTable dataTable = new DataTable();

롤 번호, 학생 이름섹션 레이블이 지정된 새 열을 만듭니다.

dataTable.Columns.Add("Roll Number", typeof(String));
dataTable.Columns.Add("Student Name", typeof(String));
dataTable.Columns.Add("Section", typeof(String));

이제 DataRow 클래스의 새 개체를 인스턴스화하고 dtr.로 이름을 지정해야 합니다.

DataRow dtr = dataTable.NewRow();

다음으로 DataRow.라는 열에 데이터를 입력합니다.

dtr[0] = "BC210120319";
dtr[1] = "Iftikhar Aslam";
dtr[2] = "BS (CS)";
dataTable.Rows.Add(dtr);
dtr = dataTable.NewRow();
dtr[0] = "BC210203291";
dtr[1] = "Saad Aslam";
dtr[2] = "BS (IT)";
dataTable.Rows.Add(dtr);
dtr = dataTable.NewRow();

방금 만든 스프레드시트에 DataTable. 열을 삽입해야 합니다.

workSheet.InsertDataTable(dataTable, true, 1, 1, true);

이 시점에서 문서를 Excel 파일로 저장하기 전에 문서 이름을 지정해야 합니다.

workBook.SaveToFile(@"E:\DataTableToExcel.xlsx", ExcelVersion.Version2016);

완전한 소스 코드:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using Spire.Xls;

namespace ExportDataTableToExcelBySaad {
  class Program {
    static void Main(string[] args) {
      Workbook workBook = new Workbook();
      workBook.Worksheets.Clear();
      Worksheet workSheet = workBook.Worksheets.Add("DataTableToExcel");
      DataTable dataTable = new DataTable();
      dataTable.Columns.Add("Roll Number", typeof(String));
      dataTable.Columns.Add("Student Name", typeof(String));
      dataTable.Columns.Add("Section", typeof(String));
      DataRow dtr = dataTable.NewRow();
      dtr[0] = "BC210120319";
      dtr[1] = "Iftikhar Aslam";
      dtr[2] = "BS (CS)";
      dataTable.Rows.Add(dtr);
      dtr = dataTable.NewRow();
      dtr[0] = "BC210203291";
      dtr[1] = "Saad Aslam";
      dtr[2] = "BS (IT)";
      dataTable.Rows.Add(dtr);
      dtr = dataTable.NewRow();
      workSheet.InsertDataTable(dataTable, true, 1, 1, true);
      workBook.SaveToFile(@"E:\DataTableToExcel.xlsx", ExcelVersion.Version2016);
    }
  }
}

출력:

DataTable을 Excel로 내보내기

작가: Saad Aslam
Saad Aslam avatar Saad Aslam avatar

I'm a Flutter application developer with 1 year of professional experience in the field. I've created applications for both, android and iOS using AWS and Firebase, as the backend. I've written articles relating to the theoretical and problem-solving aspects of C, C++, and C#. I'm currently enrolled in an undergraduate program for Information Technology.

LinkedIn

관련 문장 - Csharp Excel