푸터 콘텐츠로 바로가기
IRONXL 사용하여

C#에서 `DataTable`을 CSV 파일로 내보내는 방법

IronXL은 Microsoft Excel 설치 없이 C#에서 DataTable를 CSV로 변환할 수 있게 합니다. 이 독립 실행형 .NET 라이브러리는 개발자가 데이터를 쉽게 내보낼 수 있도록 사용자 지정 구조와 구분 기호로 DataTables를 CSV 파일로 자동 변환하는 간단한 API를 제공합니다.

IronXL은 개발자가 C# .NET 기술에서 Microsoft Excel 문서와 CSV 파일을 포함하여 상호 작용할 수 있도록 하는 유명한 라이브러리입니다. Microsoft Excel이 설치되어 있지 않아도 됩니다. 등록된 유형을 자동으로 CSV 파일로 변환하고 맞춤형 구조로 CSV 파일을 쓸 수 있습니다.

IronXL 라이브러리가 제공하는 기능은 무엇입니까?

Microsoft Excel 문서는 C# IronXL .NET 라이브러리를 사용하여 읽고 CSV 파일로 변환될 수 있습니다. IronXL은 다양한 스프레드시트 형식을 읽을 수 있는 독립 실행형 .NET 소프트웨어 라이브러리입니다. 이는 Microsoft.Office.Interop.Excel에 의존하지 않으며 Microsoft Excel의 설치가 필요하지 않습니다.

IronXL의 사용자 친화적인 C# API를 사용하여 .NET 환경에서 빠르게 Excel 스프레드시트 파일을 읽고, 수정하고, 생성할 수 있습니다. .NET Core, .NET Framework, Xamarin, Mobile, Linux, macOS, 및 Azure는 IronXL에 의해 완전히 지원됩니다.

  • 주요 .NET Core 및 .NET Framework Excel 스프레드시트 라이브러리로는 IronXL이 있습니다.
  • 콘솔, Windows Forms 및 웹 응용 프로그램을 포함하여 거의 모든 .NET Framework가 지원됩니다.
  • IronXL은 Windows, Linux 및 macOS 운영 체제에서 작동합니다.
  • IronXL은 Excel 파일 읽기를 간단하고 빠르게 만듭니다.
  • IronXL은 XLSX, XLS, CSV, TSV, XLST 및 XLSM 파일을 포함한 여러 Excel 형식을 지원합니다.
  • IronXL은 XLS, CSV, TSV, JSON 및 XML을 포함한 다양한 형식으로 파일을 내보냅니다.
  • IronXL은 Excel 계산을 생성하고 수식을 지원합니다.
  • IronXL은 텍스트, 숫자, 날짜, 통화 및 백분율을 포함한 Excel 열 데이터 형식을 지원합니다.

자세한 내용은 IronXL 문서 개요를 방문하세요.

Visual Studio에서 새 프로젝트를 어떻게 만드나요?

Visual Studio에서 IronXL 프레임워크를 사용하기 전에 .NET 프로젝트를 생성해야 합니다. 어떠한 버전의 Visual Studio도 사용할 수 있지만, 최신 버전을 권장합니다. 필요에 따라 Windows Forms 응용 프로그램 또는 다른 프로젝트 템플릿을 작성할 수 있습니다. 간단하게 유지하기 위해 이 튜토리얼에서는 콘솔 응용 프로그램을 사용할 것입니다.

Visual Studio의 새 프로젝트 생성 대화 상자에는 콘솔 앱, ASP.NET Core 웹 앱, Blazor 서버 앱 옵션을 포함한 다양한 .NET 프로젝트 템플릿이 표시됩니다. Visual Studio에서 새 프로젝트 생성

그 후, 프로젝트의 이름과 위치를 입력하세요.

Visual Studio 프로젝트 구성 대화 상자는 프로젝트 이름 'ConsoleApp1'으로 Windows를 대상으로 하고 콘솔 출력을 설정한 새로운 C# 콘솔 앱의 설정을 보여줍니다. 새 프로젝트 구성

다음으로, 다음 구조를 선택하세요. 이 프로젝트에는 .NET Core 6을 사용할 것입니다.

Visual Studio 프로젝트 생성 대화 상자는 .NET 6.0 (장기 지원)이 프레임워크로 선택되어 있는 콘솔 앱 구성을 보여줍니다. .NET Framework 버전 선택

애플리케이션이 솔루션을 생성한 후 프로그램 코드를 입력하고 애플리케이션을 빌드/실행할 수 있도록 program.cs 파일이 열립니다.

Visual Studio에서 IronXLConsole 프로젝트가 표시된 빈 C# 콘솔 애플리케이션 창으로 CSV 내보내기 기능 구현을 위한 초기 코드 구조가 준비되어 있습니다. 새로 생성된 콘솔 응용 프로그램 프로젝트

그런 다음 라이브러리를 추가하고 코드를 평가하는 데 사용할 수 있습니다. .NET MAUI 응용 프로그램 또는 VB.NET 프로젝트와 같은 다른 프로젝트 유형에 대해서는 프레임워크 관련 고려 사항이 필요한 유사한 과정이 필요합니다.

IronXL 라이브러리를 설치하는 방법은 무엇입니까?

IronXL 라이브러리를 다운로드하고 설치하는 방법은 네 가지가 있습니다.

다음과 같습니다:

  • Visual Studio를 통해 설치
  • Visual Studio 패키지 관리자 콘솔을 사용하여 설치
  • NuGet 웹사이트에서 직접 다운로드
  • IronXL 웹사이트에서 직접 다운로드

Visual Studio 설치 시 어떤 방법을 사용해야 합니까?

NuGet 패키지 관리자를 사용하여 IronXL 모듈을 설치할 수 있습니다. IronXL을 찾으려면 먼저 NuGet 패키지 관리자를 실행한 후 탐색 창에서 찾아보아야 합니다. 검색 목록에서 IronXL을 선택하여 설치하세요. 그 후, IronXL 라이브러리가 이 앱을 사용할 수 있게 됩니다.

아래 이미지는 Visual Studio의 NuGet 패키지 관리자를 실행하는 방법을 보여줍니다.

Visual Studio의 도구 메뉴 확장에 NuGet 패키지 관리자 옵션과 도구 드롭다운 메뉴 아래에 강조 표시된 패키지 관리자 콘솔이 표시됩니다. NuGet 패키지 관리자 탐색

NuGet 패키지 관리자 인터페이스에는 IronXl.Excel 패키지 버전 2022.3.0이 133K 다운로드 수와 함께 쉽게 통합할 수 있는 설치 버튼을 표시하고 있습니다. NuGet 패키지 관리자 UI에서 IronXL Install-Package

패키지 관리자 콘솔을 언제 사용해야 하나요?

많은 개발자들이 콘솔을 사용하여 작업을 수행하는 것을 선호합니다. 따라서 터미널 설치도 옵션입니다. 명령줄을 사용하여 IronXL을 설치하려면 아래 지침을 따르세요.

  • Visual Studio에서 도구 > NuGet 패키지 관리자 > 패키지 관리자 인터페이스로 이동합니다.
  • 패키지 관리자 콘솔 탭에 다음 명령어를 입력하세요:

    Install-Package IronXl.Excel
  • IronXL이 활성 프로젝트에 다운로드 및 설치될 때까지 기다리세요.

Visual Studio의 패키지 관리자 콘솔에 'Install-Package IronXl.Excel' 명령과 함께 성공적인 설치 확인 메시지가 표시됩니다. 패키지 관리자 콘솔 UI에서 IronXL Install-Package

왜 NuGet 웹사이트에서 다운로드해야 합니까?

NuGet 패키지는 웹사이트에서 직접 다운로드할 수 있는 세 번째 옵션입니다. 이 방법은 인터넷 액세스가 제한된 환경에서 작업하거나 패키지를 수동으로 관리해야 할 때 특히 유용합니다.

  • 공식 NuGet 링크로 이동합니다.
  • 다운로드 패키지 옵션은 오른쪽 메뉴에서 찾을 수 있습니다.
  • 저장된 파일을 두 번 클릭하세요. 바로 설치됩니다.
  • 그런 다음 솔루션을 다시 로드하고 프로젝트에서 사용을 시작하세요.

IronXL 웹사이트에서 직접 어떻게 설치합니까?

웹사이트에서 가장 최근 패키지를 직접 다운로드하려면 이 IronXL ZIP 파일 다운로드 링크를 클릭하세요. 이 링크를 통해 IronXL 라이브러리 DLL의 최신 버전을 포함한 ZIP 파일을 다운로드할 수 있습니다. 다운로드가 완료되면 ZIP 파일의 내용을 원하는 디렉터리에 추출하세요.

다운로드 후 프로젝트에 파일을 추가하려면 아래 단계에 따르세요.

  • 솔루션 창에서 프로젝트를 오른쪽 클릭합니다.
  • 참조를 선택한 다음 IronXL DLL이 포함된 추출 폴더로 이동합니다.
  • DLL을 선택하고 확인을 클릭하여 이를 활성 프로젝트의 참조로 추가합니다.

배포 시나리오에서는 IronXL을 Docker 컨테이너에 설정하거나 AWS LambdaAzure Functions와 같은 클라우드 플랫폼에 배포할 수도 있습니다.

DataTable를 CSV 파일로 어떻게 내보내나요?

DataTables는 IronXL을 사용하여 쉽게 CSV 파일로 내보낼 수 있습니다. 사용자 정의 구분기호 및 인코딩 옵션을 지원하여 새 CSV 파일에 데이터를 작성하는 데 도움을 줍니다.

먼저, 아래 코드 이미지에 표시된 것처럼 IronXL 네임스페이스를 포함시켜 IronXL 클래스 및 메서드를 사용해야 합니다.

C# 코드 편집기에는 'using IronXL;' 및 'using System.Data;' 네임스페이스 선언이 데이터 테이블을 CSV로 내보내기 위한 구현을 위해 구문 강조 표시와 함께 나타납니다. 일반 네임스페이스 추가

IronXL을 사용하여 Excel 파일을 생성할 수 있으며, 이는 WorkBook 객체로 변환됩니다. 그런 다음 이러한 객체에 다양한 작업을 수행합니다. 다음 예제 코드는 DataTable를 Excel 워크시트로 변환하여 Excel 파일을 작성할 것입니다.

using IronXL;
using System.Data;

// Entry point of the application
static void Main(string[] args)
{
    // Specify the file path for the CSV file output
    ExportToExcel("H:\\test.csv");
}

// Exports the DataTable to an Excel file and saves it as CSV
public static void ExportToExcel(string filepath)
{
    // Create a DataTable and add columns and rows
    DataTable table = new DataTable();
    table.Columns.Add("DataSet_Fruits", typeof(string));
    table.Rows.Add("Apple");
    table.Rows.Add("Orange");
    table.Rows.Add("Strawberry");
    table.Rows.Add("Grapes");
    table.Rows.Add("Watermelon");
    table.Rows.Add("Bananas");
    table.Rows.Add("Lemons");

    // Create a new WorkBook and add the DataTable data to it
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    var writer = wb.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        // Write each item from the DataTable into the worksheet starting from cell A1
        writer["A" + (rowCount)].Value = row[0].ToString();
        rowCount++;
    }
    // Save the workbook as a CSV file with a specified delimiter
    wb.SaveAsCsv(filepath, ";");
}
using IronXL;
using System.Data;

// Entry point of the application
static void Main(string[] args)
{
    // Specify the file path for the CSV file output
    ExportToExcel("H:\\test.csv");
}

// Exports the DataTable to an Excel file and saves it as CSV
public static void ExportToExcel(string filepath)
{
    // Create a DataTable and add columns and rows
    DataTable table = new DataTable();
    table.Columns.Add("DataSet_Fruits", typeof(string));
    table.Rows.Add("Apple");
    table.Rows.Add("Orange");
    table.Rows.Add("Strawberry");
    table.Rows.Add("Grapes");
    table.Rows.Add("Watermelon");
    table.Rows.Add("Bananas");
    table.Rows.Add("Lemons");

    // Create a new WorkBook and add the DataTable data to it
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    var writer = wb.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        // Write each item from the DataTable into the worksheet starting from cell A1
        writer["A" + (rowCount)].Value = row[0].ToString();
        rowCount++;
    }
    // Save the workbook as a CSV file with a specified delimiter
    wb.SaveAsCsv(filepath, ";");
}
$vbLabelText   $csharpLabel

위의 코드는 DataTable를 Excel 파일로 내보냅니다. 컬럼 제목은 DataTable가 생성된 후 생성됩니다. 첫 번째 열을 설정한 후 한 줄씩 추가합니다. WorkBook 객체는 해당 데이터를 저장하기 위해 DataTable 객체에 컬럼 및 행을 추가한 후 생성됩니다. 그런 다음 WorkSheet 객체가 구성되며 이는 WorkBook 객체에 추가됩니다.

DataTable의 각 값은 foreach 반복문을 사용하여 읽고 WorkSheet에 추가하기 전에 추가됩니다. 워크시트에 모든 값이 추가된 후 SaveAsCsv 메서드는 그들을 CSV 파일에 저장합니다. 구분 기호와 파일 위치를 매개변수로 지정할 수 있습니다.

더 복잡한 시나리오의 경우, 여러 개의 DataTable을 다른 워크시트로 내보내거나 DataSet을 사용하여 더 구조화된 데이터 조직을 할 수 있습니다.

다양한 CSV 포맷 사용하기

IronXL은 CSV 파일 작업 시 유연성을 제공합니다. 다음은 맞춤 형식과 인코딩이 적용된 DataTable를 내보내는 방법을 보여주는 예시입니다:

// Export with custom delimiter and encoding
public static void ExportToCSVWithOptions(DataTable dataTable, string filepath)
{
    // Create workbook from DataTable
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);
    WorkSheet ws = wb.CreateWorkSheet("DataExport");

    // Add headers
    for (int i = 0; i < dataTable.Columns.Count; i++)
    {
        ws[$"{(char)('A' + i)}1"].Value = dataTable.Columns[i].ColumnName;
    }

    // Add data rows
    for (int row = 0; row < dataTable.Rows.Count; row++)
    {
        for (int col = 0; col < dataTable.Columns.Count; col++)
        {
            ws[$"{(char)('A' + col)}{row + 2}"].Value = dataTable.Rows[row][col];
        }
    }

    // Save with custom delimiter (comma) and UTF-8 encoding
    wb.SaveAsCsv(filepath, ",", System.Text.Encoding.UTF8);
}
// Export with custom delimiter and encoding
public static void ExportToCSVWithOptions(DataTable dataTable, string filepath)
{
    // Create workbook from DataTable
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);
    WorkSheet ws = wb.CreateWorkSheet("DataExport");

    // Add headers
    for (int i = 0; i < dataTable.Columns.Count; i++)
    {
        ws[$"{(char)('A' + i)}1"].Value = dataTable.Columns[i].ColumnName;
    }

    // Add data rows
    for (int row = 0; row < dataTable.Rows.Count; row++)
    {
        for (int col = 0; col < dataTable.Columns.Count; col++)
        {
            ws[$"{(char)('A' + col)}{row + 2}"].Value = dataTable.Rows[row][col];
        }
    }

    // Save with custom delimiter (comma) and UTF-8 encoding
    wb.SaveAsCsv(filepath, ",", System.Text.Encoding.UTF8);
}
$vbLabelText   $csharpLabel

이 접근 방식은 내보내기 과정에 더 많은 제어를 제공하여 셀 데이터 형식을 설정하고 출력 구조를 사용자 정의할 수 있습니다.

Excel 스프레드시트에는 열 A에 CSV 형식이 올바르게 적용되고 추가 구분 기호 없이 과일 목록(Apple, Orange, strawberry, grapes, watermelon, bananas, lemons)이 표시됩니다. 출력 CSV 파일

실행 코드 샘플의 출력이 위에 표시되어 있습니다. 스크린샷에서 데이터 테이블의 각 데이터는 각각 새로 생성된 Excel 시트에 추가되었습니다. 서식을 적용하거나 내보내기 전에 셀에 수식을 추가하여 계산된 값을 추가할 수 있습니다.

고급 CSV 작업의 경우, 다음을 수행할 수 있습니다:

IronXL 튜토리얼에 대해 더 알아보려면 이 Excel 형식으로 내보내는 방법을 클릭하십시오.

IronXL을 사용하여 CSV를 내보내야 하는 이유는 무엇입니까?

가장 인기 있는 Excel 도구 중 하나는 IronXL입니다. 외부 소스의 다른 라이브러리에 의존하지 않습니다. 독립적이며 Microsoft Excel 설치가 필요하지 않습니다. 여러 채널에서 작동합니다.

IronXL은 모든 Microsoft Excel 문서 관련 작업을 프로그래밍적으로 구현하는 올인원 솔루션을 제공합니다. 수식 계산, 문자열 또는 숫자 정렬, 잘라내기 및 덧붙이기, 찾아 바꾸기, 병합 및 분할 해제 등을 수행할 수 있으며, 셀 데이터 형식을 설정하고 스프레드시트 데이터를 검증할 수 있습니다. 또한 CSV 파일 읽기 및 쓰기를 지원하며 Excel 데이터처럼 작업할 수 있도록 도와줍니다.

추가 혜택으로는:

IronXL의 출시 시작 가격은 $799입니다. 그것은 또한 사용자가 제품 지원 및 업데이트에 대한 1년 구독료를 지불할 수 있는 선택권을 제공합니다. 추가 수수료로 IronXL은 무제한 재배포에 대한 보안을 제공합니다. 대략적인 가격 정보를 조사하려면 이 라이선싱 페이지를 방문하십시오.

자주 묻는 질문

C#에서 DataTable을 CSV 파일로 내보내는 방법은 무엇인가요?

IronXL 사용하면 워크북을 생성하고 데이터를 워크시트 개체로 내보내는 방식으로 DataTable을 CSV 파일로 내보낼 수 있습니다. 이를 통해 Microsoft Excel 없이도 원활하게 변환하고 내보낼 수 있습니다.

이 라이브러리를 사용하여 어떤 파일 형식으로 내보낼 수 있나요?

IronXL XLS, CSV, TSV, JSON 등 다양한 형식으로 데이터를 내보낼 수 있어 다양한 데이터 요구 사항을 유연하게 처리할 수 있습니다.

이 라이브러리로 엑셀과 유사한 작업을 수행할 수 있습니까?

네, IronXL 수식 계산, 데이터 정렬, 파일 저장 등 Excel과 유사한 작업을 지원하므로 Excel 관련 프로그래밍 작업에 필요한 모든 기능을 갖춘 도구입니다.

이 라이브러리를 사용하려면 Microsoft Excel을 설치해야 하나요?

아니요, IronXL 은 Microsoft Excel 설치가 필요 없는 독립형 .NET 라이브러리이므로 개발자는 C# 애플리케이션 내에서 Excel 문서를 직접 사용할 수 있습니다.

이 라이브러리는 어떤 플랫폼과 호환되나요?

IronXL .NET Core, .NET Framework, Xamarin을 비롯한 다양한 플랫폼과 Windows, Linux, macOS와 같은 운영 체제와 호환됩니다.

내 프로젝트에 IronXL 라이브러리를 어떻게 설치할 수 있나요?

IronXL NuGet 패키지 관리자를 이용하거나 NuGet 또는 IronXL 웹사이트에서 직접 다운로드하여 Visual Studio를 사용하는 .NET 프로젝트에 설치할 수 있습니다.

이 도서관의 가격 옵션은 무엇인가요?

IronXL 제품 지원 및 업데이트가 포함된 1년 구독 옵션을 제공하며, 지속적인 지원과 최신 기능 이용을 보장합니다.

커티스 차우
기술 문서 작성자

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

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me