C# 및 Excel 데이터: 실용 가이드
이 문서에서는 C#을 사용하여 Excel 데이터를 읽고 조작하는 효과적인 방법을 자세히 설명합니다. 제공된 예에서는 Excel 파일 열기, 내용 복사 및 이메일 주소 검색을 보여줍니다. 하지만 셀 값에 직접 접근하여 처리하려면 엑셀의 고유한 데이터 구조를 이해해야 합니다.
Excel의 데이터 구조: 명명된 범위
일반적인 배열과 달리 Excel에서는 명명된 범위를 사용하여 데이터를 저장합니다. 특정 셀에 액세스하려면 해당 범위 이름을 참조해야 합니다(예: 왼쪽 상단 셀의 경우 "A1").
Range
객체 활용
C# Excel.Range
개체는 Excel 워크시트 내의 셀 또는 셀 그룹을 나타냅니다. get_Range
객체의 Excel.Worksheet
메소드는 특정 Range
객체를 검색합니다. 예:
<code class="language-csharp">Excel.Range range = worksheet.get_Range("A1", Missing.Value);</code>
셀 값 액세스: Text
및 Value2
Text
속성은 사용자에게 표시되는 텍스트를 반환하고 Value2
는 기본 값(형식 지정이나 반올림 없이)을 제공합니다.
<code class="language-csharp">string userVisibleText = range.Text; string rawValue = range.Value2;</code>
셀 범위 반복
foreach
루프는 다양한 셀을 효율적으로 반복합니다.
<code class="language-csharp">foreach (Excel.Range cell in range1) { string text = cell.Text; string value = cell.Value2; }</code>
자원 관리: 적절한 정리
효율적인 리소스 관리를 위해 Excel 개체를 생성된 순서와 반대로 해제하세요. Excel.Application
및 Excel.Workbook
은 IDisposable
을 구현하지 않으므로 사용자 정의 릴리스 기능을 사용하십시오(예: ReleaseRCM
예):
<code class="language-csharp">if (wkb != null) ExcelTools.OfficeUtil.ReleaseRCM(wkb); if (excel != null) ExcelTools.OfficeUtil.ReleaseRCM(excel);</code>
전체 코드 예시
이 C# 코드는 A1 셀의 값에 액세스하고 표시하는 방법을 보여줍니다.
<code class="language-csharp">using System; using ExcelTools = Ms.Office; using Excel = Microsoft.Office.Interop.Excel; namespace ExcelDemo { class Program { static void Main(string[] args) { string filePath = @"C:\Users\Chris\Desktop\TestSheet.xls"; Console.WriteLine(filePath); Excel.Application excelApp = null; Excel.Workbook workbook = null; try { excelApp = new Excel.Application(); workbook = ExcelTools.OfficeUtil.OpenBook(excelApp, filePath, false, false, true); Excel.Worksheet sheet = workbook.Sheets["Data"] as Excel.Worksheet; if (sheet != null) { Excel.Range cell = sheet.get_Range("A1", Missing.Value); string a1Value = cell != null ? cell.Text.ToString() : ""; Console.WriteLine("A1 value: {0}", a1Value); } } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { if (workbook != null) ExcelTools.OfficeUtil.ReleaseRCM(workbook); if (excelApp != null) ExcelTools.OfficeUtil.ReleaseRCM(excelApp); } } } }</code>
결론
C#에서 Excel 데이터를 성공적으로 사용하려면 Excel의 범위 기반 구조를 이해해야 합니다. 신중한 리소스 관리와 함께 Excel.Range
개체와 해당 속성을 사용하면 효율적이고 안정적인 데이터 액세스 및 조작이 가능합니다.
위 내용은 C#을 사용하여 Excel 데이터를 효율적으로 읽고 조작하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!