IRONXL 사용하여 C#에서 Excel 파일을 읽는 가장 좋은 방법 | IronXL 단계별 가이드 커티스 차우 업데이트됨:3월 1, 2026 다운로드 IronXL NuGet 다운로드 DLL 다운로드 무료 체험 시작하기 LLM용 사본 LLM용 사본 LLM용 마크다운 형식으로 페이지를 복사하세요 ChatGPT에서 열기 ChatGPT에 이 페이지에 대해 문의하세요 제미니에서 열기 제미니에게 이 페이지에 대해 문의하세요 Grok에서 열기 Grok에게 이 페이지에 대해 문의하세요 혼란 속에서 열기 Perplexity에게 이 페이지에 대해 문의하세요 공유하다 페이스북에 공유하기 트위터에 공유하기 LinkedIn에 공유하기 URL 복사 이메일로 기사 보내기 C#에서 Excel 파일을 읽는 것은 .NET 개발자에게 일반적인 과제입니다. 데이터 가져오기 파이프라인, 보고서 도구 또는 배치 처리 시스템을 구축하든 스프레드시트 데이터를 깔끔하게 분석하는 것이 중요합니다. IronXL은 서버에서 Microsoft Office나 COM 상호 운용성이 필요 없이 XLSX, XLS, CSV 파일을 처리하는 .NET 라이브러리입니다. 이 가이드는 설치부터 고급 쿼리에 이르기까지 전체 작업 흐름을 안내하여 프로젝트에 적합한 접근 방식을 선택할 수 있도록 돕습니다. 지금 바로 IronXL으로 시작하세요. 무료로 시작하세요 C#에서 Excel 파일을 읽는 최상의 방법은 무엇인가요? 최상의 접근 방식은 IronXL과 같은 Office에 종속되지 않은 전용 라이브러리를 사용하는 것입니다. Microsoft.Office.Interop.Excel과 같은 전통적인 방법은 Excel이 설치된 컴퓨터에서 작동하지만, 서버나 컨테이너 환경에서는 불안정합니다. 이러한 환경에서는 컴 프로세스를 비하인드에서 시작하기 때문입니다. OpenXML SDK는 무료로 서버에서 안전하게 사용할 수 있지만, 일상적인 작업에 대해 많은 보일러플레이트가 필요한 저급 XML 모델을 노출합니다. IronXL은 이러한 극단 사이에 위치합니다. API는 개발자가 이미 스프레드시트 작업을 생각하는 방식을 반영합니다. 즉, 워크북은 워크시트를 포함하고 워크시트는 셀을 포함하며 셀은 형식이 지정된 값을 보유합니다. 이 라이브러리는 형식 감지, 수식 평가 및 인코딩을 내부적으로 처리하므로 구문 분석 세부 항목보다는 비즈니스 로직에 시간을 집중할 수 있습니다. C#에서의 Excel 읽기 접근 방식 비교 접근 방식 Office가 필요합니까? 서버 안전한가요? API 간결성 형식 지원 COM 상호 운용성 예 아니요 낮음 XLSX, XLS OpenXML SDK 아니요 예 낮음 XLSX만 지원 IronXL 아니요 예 높음 XLSX, XLS, CSV IronXL의 엑셀 읽기 문서는 전체 API 면을 다룹니다. 현재는 아래 섹션들이 모든 프로젝트에서 사용할 핵심 패턴을 보여줍니다. IronXL을 .NET 프로젝트에 어떻게 설치합니까? NuGet 패키지 관리자를 사용하면 설치가 1분 이내에 완료됩니다. 프로젝트 디렉터리에서 터미널을 열고 다음을 실행하십시오: dotnet add package IronXl.Excel dotnet add package IronXl.Excel SHELL 또는 Visual Studio 패키지 관리 콘솔을 사용하십시오: Install-Package IronXl.Excel Install-Package IronXl.Excel SHELL 설치 후, 스프레드시트 접근이 필요한 파일에 using IronXL; 지시문을 추가하세요. 이 라이브러리는 .NET 10, .NET 8, .NET 6, .NET Framework 4.6.2, .NET Standard 2.0을 대상으로 하므로 런타임을 업그레이드하지 않고도 기존 프로젝트에 적합합니다. 플랫폼별 주의 사항과 NuGet 패키지 세부 정보를 위해 IronXL 설치 가이드를 참조하십시오. 추가적인 런타임 구성 요소, 레지스트리 항목, 또는 오피스 라이선스가 필요하지 않습니다. NuGet 패키지는 라이브러리에 필요한 모든 것을 번들로 제공합니다. 설치 확인 패키지를 추가한 후, 참조가 올바르게 해결되는지 확인하기 위해 프로젝트를 한 번 빌드하십시오. CS0246 오류가 IronXL 타입에서 발생할 경우, using IronXL; 지시문이 있는지 확인하고, .csproj의 대상 프레임워크가 지원되는 버전인지 확인하세요. IronXL 호환성 매트릭스는 모든 확인된 런타임 대상 목록을 제공합니다. 엑셀 워크북을 어떻게 로드하고 읽습니까? 워크북 로드는 단일 메소드 호출로 가능합니다. WorkBook.Load는 파일 경로를 받아서 메모리에 전체 파일을 나타내는 WorkBook 객체를 반환합니다. using IronXL; // Load any supported format -- XLSX, XLS, or CSV WorkBook workbook = WorkBook.Load("financial_report.xlsx"); // Access the first worksheet by position WorkSheet worksheet = workbook.WorkSheets[0]; // Or retrieve a named worksheet WorkSheet expenses = workbook.GetWorkSheet("Expenses"); Console.WriteLine($"Sheets loaded: {workbook.WorkSheets.Count}"); Console.WriteLine($"Default sheet rows: {worksheet.RowCount}"); using IronXL; // Load any supported format -- XLSX, XLS, or CSV WorkBook workbook = WorkBook.Load("financial_report.xlsx"); // Access the first worksheet by position WorkSheet worksheet = workbook.WorkSheets[0]; // Or retrieve a named worksheet WorkSheet expenses = workbook.GetWorkSheet("Expenses"); Console.WriteLine($"Sheets loaded: {workbook.WorkSheets.Count}"); Console.WriteLine($"Default sheet rows: {worksheet.RowCount}"); $vbLabelText $csharpLabel WorkBook 객체는 워크시트의 모든 데이터를 접근 가능하게 유지합니다. 각 WorkSheet 인스턴스는 파일의 탭과 매핑됩니다. 단일 시트 파일에는 인덱스 (WorkSheets[0])로 접근하는 것이 신뢰할 수 있습니다; 이름으로 접근하는 것이 파일에 이름이 알려진 여러 탭이 있을 때 더 안전합니다. IronXL은 셀을 읽을 때 자동으로 수식을 평가합니다. 셀 B10에 =SUM(B2:B9)이 포함되어 있는 경우, sheet["B10"].DecimalValue을 읽으면 수식 문자열이 아닌 계산된 합계를 반환합니다. 워크북 로드 옵션에 대한 자세한 내용은 스프레드시트 로드 방법 가이드를 참조하십시오. 여러 워크시트 작업 워크북에 여러 탭이 있는 경우, workbook.WorkSheets을 사용하여 이들을 나열하고 각 탭을 순차적으로 처리할 수 있습니다. 이는 데이터가 월별, 부서별, 또는 지역별로 별개의 탭에 나뉘어 있는 파일에 유용합니다. WorkSheet.Name 속성은 조건부 처리나 로깅에 사용할 수 있는 문자열로 탭 레이블을 제공합니다. 워크시트에서 셀 값을 어떻게 읽습니까? IronXL은 각 셀에 강력한 형식의 속성을 제공하여 값을 직접 올바른 .NET 형식으로 읽을 수 있게 합니다. using IronXL; WorkBook workbook = WorkBook.Load("Products.xlsx"); WorkSheet sheet = workbook.DefaultWorkSheet; // Address-based access with typed properties string productName = sheet["A2"].StringValue; int quantity = sheet["B2"].IntValue; decimal price = sheet["C2"].DecimalValue; bool inStock = sheet["D2"].BoolValue; // Check for empty cells before processing var statusCell = sheet["E2"]; if (statusCell.Value != null && statusCell.StringValue.Length > 0) { Console.WriteLine($"Status: {statusCell.StringValue}"); } // Row/column index access (zero-based) var firstDataCell = sheet.Rows[1].Columns[0]; Console.WriteLine($"Product: {productName}, Qty: {quantity}, Price: {price:C}"); using IronXL; WorkBook workbook = WorkBook.Load("Products.xlsx"); WorkSheet sheet = workbook.DefaultWorkSheet; // Address-based access with typed properties string productName = sheet["A2"].StringValue; int quantity = sheet["B2"].IntValue; decimal price = sheet["C2"].DecimalValue; bool inStock = sheet["D2"].BoolValue; // Check for empty cells before processing var statusCell = sheet["E2"]; if (statusCell.Value != null && statusCell.StringValue.Length > 0) { Console.WriteLine($"Status: {statusCell.StringValue}"); } // Row/column index access (zero-based) var firstDataCell = sheet.Rows[1].Columns[0]; Console.WriteLine($"Product: {productName}, Qty: {quantity}, Price: {price:C}"); $vbLabelText $csharpLabel sheet["A2"] 구문은 표준 Excel 표기법을 사용합니다. 열 문자는 대소문자를 구분하지 않으며, 행 번호는 1부터 시작하여 엑셀이 셀을 레이블하는 방식과 일치합니다. 셀 값 읽기 문서는 날짜로 포맷된 셀에 대한 DateTimeValue를 포함한 추가 형식 접속자를 보여줍니다. 셀에 문자로 저장된 숫자가 있을 경우 (내보낸 스프레드시트에서 흔한 데이터 품질 문제), StringValue는 텍스트 그대로 반환하고, DecimalValue는 파싱을 시도하며 실패 시 0을 반환합니다. 프로덕션 코드에서 예상치 못한 데이터를 형식화된 값으로 처리하기 전에 항상 유효성을 검사하십시오. 날짜 및 부울 셀 처리 엑셀의 날짜 셀은 내부적으로 일련번호로 저장됩니다. IronXL은 이를 수동 산술 없이 .NET DateTime 객체로 변환하기 위한 DateTimeValue을 노출합니다. 셀에 TRUE 또는 FALSE가 포함된 경우, BoolValue은 문자열 비교 없이 올바른 부울 값을 반환합니다. 이러한 유형화된 접근자는 제네릭 텍스트 기반의 구문 분석기를 통해 스프레드시트를 읽을 때 일반적으로 발생하는 데이터 유형 버그의 클래스를 제거합니다. 행과 셀을 어떻게 반복합니까? 데이터셋을 반복하기 위해서 범위 또는 행 컬렉션이 필요합니다. IronXL은 두 가지 접근 방식을 모두 지원하며, 데이터를 일치시키기 위해 이들을 결합하여 사용할 수 있습니다. using IronXL; WorkBook workbook = WorkBook.Load("financial_report.xlsx"); WorkSheet sheet = workbook.WorkSheets[0]; // Iterate a cell range -- skips header row foreach (var cell in sheet["A2:D100"]) { Console.WriteLine($"{cell.AddressString}: {cell.Text}"); } // Row-by-row with column access for (int rowIndex = 1; rowIndex < sheet.RowCount; rowIndex++) { var row = sheet.Rows[rowIndex]; var values = new System.Text.StringBuilder(); foreach (var cell in row) { if (cell.Value != null) values.Append($"{cell.StringValue}\t"); } Console.WriteLine(values.ToString().TrimEnd()); } using IronXL; WorkBook workbook = WorkBook.Load("financial_report.xlsx"); WorkSheet sheet = workbook.WorkSheets[0]; // Iterate a cell range -- skips header row foreach (var cell in sheet["A2:D100"]) { Console.WriteLine($"{cell.AddressString}: {cell.Text}"); } // Row-by-row with column access for (int rowIndex = 1; rowIndex < sheet.RowCount; rowIndex++) { var row = sheet.Rows[rowIndex]; var values = new System.Text.StringBuilder(); foreach (var cell in row) { if (cell.Value != null) values.Append($"{cell.StringValue}\t"); } Console.WriteLine(values.ToString().TrimEnd()); } $vbLabelText $csharpLabel 범위 문자열 "A2:D100"은 평면 셀 컬렉션을 생성합니다. 범위 내의 행은 위에서 아래로, 왼쪽에서 오른쪽으로 처리됩니다. 이 패턴은 List<t>, DataTable 또는 데이터베이스로 내보낼 때 잘 작동합니다. sheet.RowCount 속성은 워크시트에서 마지막으로 사용된 행을 반영하여, 데이터가 끝나면 자동으로 루프가 종료됩니다. 엑셀 범위 반복 가이드는 열 먼저 순회하는 추가 반복 패턴을 다룹니다. 헤더 행 건너뛰기 대부분의 스프레드시트에는 데이터를 포함하지 않고 열 이름을 설명하는 헤더 행이 있습니다. 범위 반복을 2행 (예: "A2:D100")에서 시작하거나 인덱스 루프를 rowIndex = 1에서 시작하여 헤더를 건너뜁니다. ToDataTable(true)을 사용하는 경우, IronXL은 헤더 감지를 자동으로 처리하며 첫 번째 행에서 열 이름을 매핑합니다. 여러 Excel 형식을 어떻게 처리합니까? IronXL은 확장자와 파일 헤더에서 형식을 자동으로 감지합니다. API는 XLSX, XLS, CSV 파일에 대해 동일하므로 조건문 없이 세 가지 형식 모두에서 동일한 구문 분석 코드가 작동합니다. using IronXL; // Load different formats with identical API WorkBook xlsxBook = WorkBook.Load("Modern.xlsx"); WorkBook xlsBook = WorkBook.Load("Legacy.xls"); WorkBook csvBook = WorkBook.Load("Export.csv"); // Access worksheets identically across formats WorkSheet sheet1 = xlsxBook.DefaultWorkSheet; WorkSheet sheet2 = xlsBook.DefaultWorkSheet; WorkSheet sheet3 = csvBook.DefaultWorkSheet; // Cross-format conversion -- save XLSX as CSV, or CSV as XLSX xlsxBook.SaveAs("converted_output.csv"); csvBook.SaveAs("structured_output.xlsx"); Console.WriteLine($"XLSX rows: {sheet1.RowCount}"); Console.WriteLine($"XLS rows: {sheet2.RowCount}"); Console.WriteLine($"CSV rows: {sheet3.RowCount}"); using IronXL; // Load different formats with identical API WorkBook xlsxBook = WorkBook.Load("Modern.xlsx"); WorkBook xlsBook = WorkBook.Load("Legacy.xls"); WorkBook csvBook = WorkBook.Load("Export.csv"); // Access worksheets identically across formats WorkSheet sheet1 = xlsxBook.DefaultWorkSheet; WorkSheet sheet2 = xlsBook.DefaultWorkSheet; WorkSheet sheet3 = csvBook.DefaultWorkSheet; // Cross-format conversion -- save XLSX as CSV, or CSV as XLSX xlsxBook.SaveAs("converted_output.csv"); csvBook.SaveAs("structured_output.xlsx"); Console.WriteLine($"XLSX rows: {sheet1.RowCount}"); Console.WriteLine($"XLS rows: {sheet2.RowCount}"); Console.WriteLine($"CSV rows: {sheet3.RowCount}"); $vbLabelText $csharpLabel CSV 파일에 대해 IronXL은 콤마를 포함하는 인용 필드, 인용값 내부의 새줄, 이스케이프된 큰따옴표를 포함한 RFC 4180 규칙을 준수합니다. CSV에서 XLSX로 변환 가이드는 비표준 CSV 내보내기를 위한 구분자 사용자 정의를 다룹니다. 어플리케이션이 외부 시스템에서 파일을 수락해야 할 경우, 파일 확장자를 검사하고 로드하기 전에 콘텐츠를 확인하는 것이 좋습니다. IronXL은 파일이 손상되었거나 지원되지 않는 형식일 경우 설명적인 예외를 던지며, 이를 캐치하여 사용자에게 표시할 수 있습니다. Excel 데이터에 고급 쿼리를 어떻게 실행합니까? 셀별로 읽는 것 외에, IronXL은 시트 범위를 쿼리 가능한 컬렉션으로 변환하는 집계 함수와 LINQ 호환성을 제공합니다. using IronXL; using System.Linq; WorkBook workbook = WorkBook.Load("Financials.xlsx"); WorkSheet sheet = workbook.DefaultWorkSheet; // Built-in aggregates -- no manual looping needed decimal totalSales = sheet["B2:B50"].Sum(); decimal maxRevenue = sheet["C2:C50"].Max(c => c.DecimalValue); decimal avgMargin = sheet["D2:D50"].Avg(); // LINQ filtering directly on a range var highValueRows = sheet["C2:C50"] .Where(c => c.DecimalValue > 1000) .Select(c => new { c.AddressString, c.DecimalValue }); foreach (var row in highValueRows) Console.WriteLine($"높음 value at {row.AddressString}: {row.DecimalValue:C}"); // Write a calculated result back to the sheet sheet["E2"].Value = totalSales; workbook.SaveAs("Financials_Updated.xlsx"); Console.WriteLine($"Total: {totalSales:C}, Max: {maxRevenue:C}, Avg: {avgMargin:C}"); using IronXL; using System.Linq; WorkBook workbook = WorkBook.Load("Financials.xlsx"); WorkSheet sheet = workbook.DefaultWorkSheet; // Built-in aggregates -- no manual looping needed decimal totalSales = sheet["B2:B50"].Sum(); decimal maxRevenue = sheet["C2:C50"].Max(c => c.DecimalValue); decimal avgMargin = sheet["D2:D50"].Avg(); // LINQ filtering directly on a range var highValueRows = sheet["C2:C50"] .Where(c => c.DecimalValue > 1000) .Select(c => new { c.AddressString, c.DecimalValue }); foreach (var row in highValueRows) Console.WriteLine($"높음 value at {row.AddressString}: {row.DecimalValue:C}"); // Write a calculated result back to the sheet sheet["E2"].Value = totalSales; workbook.SaveAs("Financials_Updated.xlsx"); Console.WriteLine($"Total: {totalSales:C}, Max: {maxRevenue:C}, Avg: {avgMargin:C}"); $vbLabelText $csharpLabel LINQ 호환성은 데이터베이스로 가져오기 전에 행을 필터링하거나 열의 모든 값이 임계값을 만족하는지 확인해야 할 때 유용합니다. 라이브러리는 LINQ 실행 전 수식을 평가하므로 집계 쿼리는 항상 수식 문자열이 아닌 최종 계산 값을 기반으로 작동합니다. IronXL을 사용한 LINQ 튜토리얼은 시트를 조인하는 것, 열 기준으로 그룹화하는 것, 결과를 강력하게 타입화된 개체에 투영하는 것 등, 데이터 파이프라인 코드의 많은 보일러플레이트를 제거하는 패턴을 다룹니다. Excel 데이터를 DataTable로 어떻게 내보냅니까? 많은 .NET 응용 프로그램은 스프레드시트 데이터를 추가 처리 또는 데이터베이스 삽입을 위해 ADO.NET DataTable로 로드합니다. IronXL은 수동 열 매핑이 필요 없는 직접 변환 방법을 제공합니다. using IronXL; using System.Data; WorkBook workbook = WorkBook.Load("SalesData.xlsx"); WorkSheet sheet = workbook.DefaultWorkSheet; // Convert worksheet to DataTable -- first row becomes column headers DataTable dataTable = sheet.ToDataTable(true); Console.WriteLine($"Columns: {dataTable.Columns.Count}"); Console.WriteLine($"Rows: {dataTable.Rows.Count}"); // Iterate the DataTable normally foreach (DataRow row in dataTable.Rows) { Console.WriteLine($"{row["ProductName"]} -- {row["Quantity"]} -- {row["Price"]}"); } using IronXL; using System.Data; WorkBook workbook = WorkBook.Load("SalesData.xlsx"); WorkSheet sheet = workbook.DefaultWorkSheet; // Convert worksheet to DataTable -- first row becomes column headers DataTable dataTable = sheet.ToDataTable(true); Console.WriteLine($"Columns: {dataTable.Columns.Count}"); Console.WriteLine($"Rows: {dataTable.Rows.Count}"); // Iterate the DataTable normally foreach (DataRow row in dataTable.Rows) { Console.WriteLine($"{row["ProductName"]} -- {row["Quantity"]} -- {row["Price"]}"); } $vbLabelText $csharpLabel true를 ToDataTable에 전달하면 첫 번째 워크시트 행을 열 헤더로 처리합니다. 결과 DataTable는 헤더 텍스트와 일치하는 문자열 열 이름을 사용하여 이후의 LINQ-to-DataSet 쿼리가 읽기 쉽습니다. DataTable 내보내기 문서는 null 처리 및 유형 추론 옵션을 다룹니다. 이 패턴은 하위 코드를 DataTable로 불러와서 -- 예를 들어, SQL Server로 행을 삽입하기 위해 SqlBulkCopy를 호출할 때 -- 특히 유용합니다. XLSX 파일을 로드하여 DataTable로 변환하고, 열-매핑 보일러플레이트를 작성하지 않고 대량 삽입할 수 있습니다. IronXL 코어 읽기 API 참조 작업 API 반환값 파일 로드 `WorkBook.Load(path)` `WorkBook` 인덱스로 워크시트 가져오기 `workbook.WorkSheets[0]` `WorkSheet` 이름으로 워크시트 가져오기 `workbook.GetWorkSheet("name")` `WorkSheet` 문자열 셀 읽기 `sheet["A1"].StringValue` `string` 소수 셀 읽기 `sheet["B1"].DecimalValue` `decimal` 범위 반복 `foreach cell in sheet["A2:D100"]` `IEnumerable<Cell>` 범위 합 `sheet["B2:B50"].Sum()` `decimal` 데이터 테이블로 내보내기 `sheet.ToDataTable(true)` `DataTable` 전체 API 목록을 보려면 IronXL API 레퍼런스를 참조하세요. 이 레퍼런스는 매개변수 설명과 반환 유형 세부 사항이 있는 모든 속성과 메서드를 다룹니다. 다음 단계는 무엇입니까? C#에서 Excel 파일을 읽는 것은 올바른 라이브러리를 보유하고 있다면 간단합니다. IronXL은 Office 종속성을 제거하고 API 표면을 간소화하며 동일한 코드 경로로 XLSX, XLS 및 CSV 형식을 처리합니다. 여기서 다룬 패턴들 -- 워크북 로드, 형식화된 셀 값 읽기, 범위 반복, 집계 실행, 그리고 DataTable로 내보내기 -- 는 대부분의 실제 스프레드시트 읽기 요구사항을 다룹니다. 이 패턴들을 계속 구축하려면: 프로젝트 설정 및 런타임 요구 사항에 대한 지침은 IronXL 시작 문서를 읽어보세요. 쓰기, 서식 지정, 차트 생성을 위한 사용 방법 가이드를 탐색하세요. IronXL이 자동으로 평가하는 Excel 기능을 이해하려면 Excel 수식 지원 가이드를 검토하세요. 프로덕션 배포 옵션은 IronXL 라이선스 페이지를 확인하세요. 데이터 유효성 검사, 피벗 테이블 내보내기, 비밀번호로 보호된 파일 처리를 다루는 작업 예제는 IronXL 블로그를 둘러보세요. 다른 라이브러리와 IronXL을 평가하는 팀을 위해 IronXL 대 EPPlus 비교와 IronXL 대 NPOI 비교는 성능 벤치마크와 API 차이점을 다룹니다. 두 비교 모두 각 라이브러리의 동등한 작업에 대한 코드 샘플을 포함합니다. Microsoft의 Excel 파일 형식 사양은 레거시 시스템에서 비정상적인 스프레드시트 구조를 마주칠 때 유용한 참조입니다. ECMA-376 표준은 XLSX 파일이 따르는 OOXML 형식을 정의합니다. 프로덕션 라이선스에 커밋하기 전에 자신만의 프로젝트에서 전체 API를 테스트하기 위해 무료 IronXL 체험 라이선스로 시작하세요. 자주 묻는 질문 C#에서 엑셀 파일을 읽는 가장 좋은 방법은 무엇일까요? C#에서 Excel 파일을 읽는 가장 좋은 방법은 IronXL 과 같은 Office 독립형 라이브러리를 사용하는 것입니다. IronXL은 Microsoft Excel이나 COM Interop 없이 XLSX, XLS 및 CSV 형식을 처리하므로 서버 및 컨테이너 환경에서 안전하게 사용할 수 있습니다. IronXL 사용하려면 Microsoft Office가 설치되어 있어야 합니까? 아니요. IronXL 은 NuGet 패키지로 배포되는 독립형 .NET 라이브러리입니다. Microsoft Office, Excel 또는 COM 구성 요소가 컴퓨터에 설치되어 있을 필요가 없습니다. IronXL 어떤 Excel 파일 형식을 지원하나요? IronXL XLSX, XLS 및 CSV 파일을 읽고 쓸 수 있습니다. 파일 확장자와 내용 헤더를 기반으로 파일 형식을 자동으로 감지합니다. .NET 프로젝트에 IronXL 설치하는 방법은 무엇인가요? 터미널에서 'dotnet add package IronXl.Excel'을 실행하거나 Visual Studio 패키지 관리자 콘솔에서 ' Install-Package IronXl.Excel'을 실행하십시오. IronXL Excel 데이터를 DataTable로 내보낼 수 있습니까? 예. WorkSheet.ToDataTable(true) 메서드는 모든 워크시트를 ADO .NET DataTable로 변환하며, true를 전달하면 첫 번째 행이 열 머리글로 사용됩니다. IronXL Excel 데이터에 대한 LINQ 쿼리를 지원합니까? 네. IronXL 셀 범위는 IEnumerable 인터페이스를 구현하므로 Where, Select, Sum, Max, Avg와 같은 LINQ 메서드를 워크시트 범위에서 직접 사용할 수 있습니다. IronXL 엑셀 수식을 어떻게 처리하나요? IronXL 셀 값을 읽을 때 수식을 자동으로 평가합니다. 수식이 있는 셀에서 sheet["B10"].DecimalValue를 읽으면 수식 문자열이 아닌 계산된 결과가 반환됩니다. IronXL 어떤 .NET 버전을 지원합니까? IronXL .NET 10, .NET 8, .NET 6, .NET Framework 4.6.2 및 .NET Standard 2.0을 지원합니다. 커티스 차우 지금 바로 엔지니어링 팀과 채팅하세요 기술 문서 작성자 커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다. 커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다. 관련 기사 업데이트됨 3월 1, 2026 .NET C#에서 Excel 파일 다운로드: XLSX, CSV 등 다양한 형식으로 데이터 내보내기 ASP.NET Core 에서 C# 및 IronXL 사용하여 Excel 파일을 다운로드하는 방법을 설명합니다. MVC 컨트롤러에서 MemoryStream 및 File() 반환 값을 사용하여 데이터를 XLSX, CSV 및 XML 형식으로 내보낼 수 있습니다. 코드 예제가 포함되어 있습니다. 더 읽어보기 업데이트됨 3월 1, 2026 IronXL 사용하여 Blazor 에서 Excel 파일을 내보내는 방법 IronXL 사용하여 Blazor Server 애플리케이션에서 데이터를 Excel로 내보내는 방법을 알아보세요. 이 가이드에서는 프로젝트 설정, 서비스 설계, 조건부 서식, 다중 시트 보고서 및 오류 처리에 대한 모든 C# 코드 예제를 다룹니다. 더 읽어보기 업데이트됨 2월 27, 2026 StreamReader 대신 C#에서 Excel 파일을 읽는 방법 StreamReader가 Excel 파일을 읽을 수 없는 이유와 C# .NET 에서 IronXL 사용하여 디스크 또는 메모리 스트림에서 XLSX 및 XLS 통합 문서를 로드하는 방법을 알아보세요. 더 읽어보기 IronXL 사용하여 C#에서 SQL 데이터를 Excel로 내보내기IronXL 사용하여 C# .NET Core ...
업데이트됨 3월 1, 2026 .NET C#에서 Excel 파일 다운로드: XLSX, CSV 등 다양한 형식으로 데이터 내보내기 ASP.NET Core 에서 C# 및 IronXL 사용하여 Excel 파일을 다운로드하는 방법을 설명합니다. MVC 컨트롤러에서 MemoryStream 및 File() 반환 값을 사용하여 데이터를 XLSX, CSV 및 XML 형식으로 내보낼 수 있습니다. 코드 예제가 포함되어 있습니다. 더 읽어보기
업데이트됨 3월 1, 2026 IronXL 사용하여 Blazor 에서 Excel 파일을 내보내는 방법 IronXL 사용하여 Blazor Server 애플리케이션에서 데이터를 Excel로 내보내는 방법을 알아보세요. 이 가이드에서는 프로젝트 설정, 서비스 설계, 조건부 서식, 다중 시트 보고서 및 오류 처리에 대한 모든 C# 코드 예제를 다룹니다. 더 읽어보기
업데이트됨 2월 27, 2026 StreamReader 대신 C#에서 Excel 파일을 읽는 방법 StreamReader가 Excel 파일을 읽을 수 없는 이유와 C# .NET 에서 IronXL 사용하여 디스크 또는 메모리 스트림에서 XLSX 및 XLS 통합 문서를 로드하는 방법을 알아보세요. 더 읽어보기