C#을 사용하여 Excel 파일의 데이터 읽기

MS Excel 파일은 행과 열의 형태로 데이터를 저장하는 데 널리 사용됩니다. 다양한 경우에 대용량 데이터 세트도 Excel 파일로 유지 관리됩니다. 종종 Excel 파일을 읽고 .NET 응용 프로그램 내에서 데이터를 가져와야 합니다. 몇 가지 간단한 단계로 이를 달성하기 위해 이 문서에서는 C#에서 Excel 파일을 읽는 방법을 보여줍니다. 특히, 전체 Excel 파일을 읽는 방법 또는 이 파일에서 하나의 워크시트만 읽는 방법을 다룹니다.

Excel 파일을 읽는 C# 라이브러리

워크시트에서 데이터를 읽으려면 .NET용 Aspose.Cells를 사용합니다. Excel 파일을 만들고 조작하는 강력하고 기능이 풍부한 API입니다. 또한 Excel 파일을 아주 쉽게 읽을 수 있습니다. API는 다운로드 섹션에서 다운로드하거나 NuGet을 통해 설치할 수 있습니다.

PM> Install-Package Aspose.Cells

C#에서 Excel 파일 읽기

Excel 파일에서 데이터는 각 셀이 이름(A1, B3 등) 또는 행 및 열 인덱스로 식별되는 셀 내부에 저장됩니다. 셀 모음은 워크시트를 만들고 Excel 파일에는 단일 또는 여러 워크시트가 포함될 수 있습니다. 마지막으로 모든 워크시트는 통합 문서를 구성합니다. .NET용 Aspose.Cells는 동일한 명명 규칙을 사용하여 Excel 파일을 조작합니다.

다음은 C#을 사용하여 Excel 파일을 읽고 해당 데이터를 인쇄하는 단계입니다.

  • Workbook 클래스를 이용하여 엑셀 파일을 불러옵니다.
  • WorksheetCollection 클래스의 개체를 만들고 Workbook.Worksheets를 사용하여 워크시트의 참조를 가져옵니다.
  • 루프를 시작하여 컬렉션의 모든 워크시트를 탐색하고 각 반복에서 다음 단계를 수행합니다.
    • Worksheet 개체에서 워크시트의 참조를 가져옵니다.
    • 워크시트의 데이터 행과 열 수를 가져옵니다.
    • 행에 대한 루프를 시작합니다.
    • 열에 대해 중첩 루프를 시작합니다.
    • Worksheet.Cells[i, j].Value 속성을 사용하여 각 셀의 데이터를 읽습니다.

다음 코드 샘플은 C#에서 Excel 파일을 읽는 방법을 보여줍니다.

// 엑셀 파일 불러오기
Workbook wb = new Workbook("excel.xlsx");

// 모든 워크시트 가져오기
WorksheetCollection collection = wb.Worksheets;

// 모든 워크시트 반복
for (int worksheetIndex = 0; worksheetIndex < collection.Count; worksheetIndex++)
{

    // 인덱스를 사용하여 워크시트 가져오기
    Worksheet worksheet = collection[worksheetIndex];

    // 워크시트 이름 인쇄
    Console.WriteLine("Worksheet: " + worksheet.Name);

    // 행과 열의 수 얻기
    int rows = worksheet.Cells.MaxDataRow;
    int cols = worksheet.Cells.MaxDataColumn;

    // 행 반복
    for (int i = 0; i < rows; i++)
    {

        // 선택한 행의 각 열 반복
        for (int j = 0; j < cols; j++)
        {
            // 프링 셀 값
            Console.Write(worksheet.Cells[i, j].Value + " | ");
        }
        // 줄바꿈 인쇄
        Console.WriteLine(" ");
    }
}

다음은 위의 코드 샘플을 실행한 후 콘솔에 표시되는 출력입니다.

C#에서 Excel 파일의 워크시트에서 데이터 읽기

C#에서 Excel 파일 읽기

C#의 Excel에서 특정 워크시트 읽기

아래 단계에 따라 Excel 파일에서 특정 워크시트만 읽을 수도 있습니다.

  • Workbook 클래스를 이용하여 엑셀 파일을 불러옵니다.
  • Workbook.Worksheets[index]를 사용하여 Worksheet 개체에서 원하는 워크시트의 참조를 가져옵니다.
  • 워크시트의 데이터 행과 열 수를 가져옵니다.
  • 행에 대한 루프를 시작합니다.
  • 열에 대해 중첩 루프를 시작합니다.
  • Worksheet.Cells[i, j].Value 속성을 사용하여 각 셀의 데이터를 읽습니다.

다음 코드 샘플은 C#의 특정 워크시트에서 데이터를 읽는 방법을 보여줍니다.

// 엑셀 파일 불러오기
Workbook wb = new Workbook("excel.xlsx");

// 인덱스를 사용하여 워크시트 가져오기
Worksheet worksheet = wb.Worksheets[0];

// 워크시트 이름 인쇄
Console.WriteLine("Worksheet: " + worksheet.Name);

// 행과 열의 수 얻기
int rows = worksheet.Cells.MaxDataRow;
int cols = worksheet.Cells.MaxDataColumn;

// 행 반복
for (int i = 0; i < rows; i++)
{
    // 선택한 행의 각 열 반복
    for (int j = 0; j < cols; j++)
    {
        // 프링 셀 값
        Console.Write(worksheet.Cells[i, j].Value + " | ");
    }
    // 줄바꿈 인쇄
    Console.WriteLine(" ");
}

무료 API 라이선스 받기

무료 임시 라이선스를 얻으면 평가 제한 없이 Aspose.Cells for .NET을 사용할 수 있습니다.

결론

이 문서에서는 C#에서 Excel 파일을 동적으로 읽는 방법을 배웠습니다. 코드 샘플을 통해 Excel 통합 문서의 특정 워크시트 또는 모든 워크시트에서 데이터를 읽는 방법을 살펴보았습니다. 또한 문서를 사용하여 .NET용 Aspose.Cells의 다른 기능을 탐색할 수 있습니다. 질문이 있는 경우 포럼을 통해 알려주십시오.

또한보십시오