
C#을 사용하여 CSV 파일 읽기 (코드 예제 튜토리얼)
이 튜토리얼은 추가 인터롭제 설치 없이 IronXL C# 라이브러리를 사용하여 매우 효율적이고 효과적인 방식으로 CSV 파일을 읽는 방법을 시연합니다.
C#에서 CSV 파일을 한 줄씩 읽는 방법
- 라인별로 CSV 파일을 읽기 위한 C# 라이브러리 설치
- 고급
LoadCSV메소드를 활용하여 CSV 파일 읽기 - 존재하지 않는 파일을 로드할 때 C#에서
Exists메서드를 사용하여 처리하기 - CSV 데이터를 데이터베이스로 변환하려면
ToDataTable메서드를 사용하세요 SaveAs메서드를 사용하여 Excel 파일을 내보내면 CSV 데이터가 자동으로 Excel로 변환됩니다
How to read CSV Files in C#
MVC, ASP.NET 또는 .NET Core에서 CSV 파일을 읽기 전에 먼저 IronXL을 설치해야 합니다. 여기에는 프로세스의 기본 개요가 있습니다.
Visual Studio에서 Project 메뉴를 선택하고, NuGet 패키지 관리로 가서 IronXL.Excel를 검색한 후 설치하십시오.
NuGet 패키지 관리자에서 IronXL 패키지를 설치합니다
IronXL은 C#에서 CSV 파일을 읽어야 할 때 사용하기에 훌륭한 도구입니다. 아래의 코드 예제는 CSV 파일을 쉼표나 다른 구분자를 사용하여 읽을 수 있음을 보여줍니다.
// Load a CSV file into a WorkBook object specifying file format and delimiters
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Get the default worksheet from the workbook
WorkSheet ws = workbook.DefaultWorkSheet;
// Save the workbook as an Excel file
workbook.SaveAs("Csv_To_Excel.xlsx");' Load a CSV file into a WorkBook object specifying file format and delimiters
Dim workbook As WorkBook = WorkBook.LoadCSV("Weather.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
' Get the default worksheet from the workbook
Dim ws As WorkSheet = workbook.DefaultWorkSheet
' Save the workbook as an Excel file
workbook.SaveAs("Csv_To_Excel.xlsx")
이 튜토리얼을 위한 CSV 데이터
WorkBook 객체가 생성됩니다. 그런 다음 WorkBook 객체의 LoadCSV 메소드를 사용하여 읽고자 하는 CSV 파일의 이름, 형식 및 사용된 구분자를 나타내며, 이는 문자열 배열로 저장됩니다. 이 시나리오에서 쉼표가 구분자로 사용됩니다.
그 후에, WorkSheet 객체가 생성됩니다; 여기에 CSV 파일의 내용이 저장됩니다. 파일은 그런 다음 새 형식으로 이름을 바꾸어 저장됩니다. CSV 파일 데이터는 그런 다음 워크시트에 표 형식으로 배치됩니다. 출력은 다음과 같이 보이게 됩니다:
Excel 파일로 변환된 데이터
CSV parsing in C# .NET
CSV는 필드 내 줄 바꿈 처리 및 필드가 인용 부호로 감싸질 수 있는 방식에 몇 가지 문제가 있어 단순 문자열 분할 기법이 작동하지 않습니다 Split("'"). 대신, IronXL은 LoadCSV 메소드의 선택적 매개변수를 사용하여 구분자를 사용자 정의할 수 있으며, 자세한 사항은 LoadCSV의 API 문서를 확인하십시오.
C# Records — Reading CSV Data
아래 예제에서는 foreach 루프를 사용하여 CSV 파일의 행을 반복 탐색하고, 콘솔을 사용하여 데이터를 기록합니다.
// Load a CSV file into a WorkBook object specifying file format and delimiters
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Get the default worksheet from the workbook
WorkSheet ws = workbook.DefaultWorkSheet;
// Convert the worksheet data into a DataTable
DataTable dt = ws.ToDataTable(true); // The argument true indicates the first row is header
// Iterate through each row in the DataTable
foreach (DataRow row in dt.Rows)
{
// Iterate through each column in the current row
for (int i = 0; i < dt.Columns.Count; i++)
{
// Output each cell value to the console
Console.Write(row[i] + " ");
}
// New line after each row
Console.WriteLine();
}' Load a CSV file into a WorkBook object specifying file format and delimiters
Dim workbook As WorkBook = WorkBook.LoadCSV("Weather.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
' Get the default worksheet from the workbook
Dim ws As WorkSheet = workbook.DefaultWorkSheet
' Convert the worksheet data into a DataTable
Dim dt As DataTable = ws.ToDataTable(True) ' The argument true indicates the first row is header
' Iterate through each row in the DataTable
For Each row As DataRow In dt.Rows
' Iterate through each column in the current row
For i As Integer = 0 To dt.Columns.Count - 1
' Output each cell value to the console
Console.Write(row(i) & " ")
Next i
' New line after each row
Console.WriteLine()
Next row
CSV 파일에서 데이터를 가져와 Console에 표시하는 방법
CSV 파일 문자열 라인을 Excel 형식으로 변환
절차는 간단합니다: CSV 파일을 로드하고 Excel 파일로 저장하세요.
// Load a CSV file into a WorkBook object specifying file format and delimiters
WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Get the default worksheet from the workbook
WorkSheet ws = workbook.DefaultWorkSheet;
// Save the workbook as an Excel file
workbook.SaveAs("CsvToExcelConversion.xlsx");' Load a CSV file into a WorkBook object specifying file format and delimiters
Dim workbook As WorkBook = WorkBook.LoadCSV("test.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
' Get the default worksheet from the workbook
Dim ws As WorkSheet = workbook.DefaultWorkSheet
' Save the workbook as an Excel file
workbook.SaveAs("CsvToExcelConversion.xlsx")IronXL을 사용하여 변환된 CSV 파일 읽고 조작하기
IronXL의 WorkBook 클래스는 Excel 시트를 나타내며 C#에서 Excel 파일을 열기 위해 이 클래스를 사용합니다. 아래의 코드 예제는 원하는 Excel 파일을 WorkBook 객체에 로드할 것입니다:
// Load WorkBook from a .xlsx file
var workbook = WorkBook.Load(@"Spreadsheets\\sample.xlsx");' Load WorkBook from a .xlsx file
Dim workbook = WorkBook.Load("Spreadsheets\\sample.xlsx")WorkSheet 객체는 여러 WorkBooks에서 찾을 수 있습니다. 이들은 엑셀 문서의 워크시트입니다. 워크북에 워크시트가 있는 경우 다음을 통해 이름으로 가져올 수 있습니다:
// Open a specific worksheet for reading by its name
var worksheet = workbook.GetWorkSheet("sheetnamegoeshere");' Open a specific worksheet for reading by its name
Dim worksheet = workbook.GetWorkSheet("sheetnamegoeshere")셀 값을 읽는 코드:
// Read and output values from a range of cells elegantly
foreach (var cell in worksheet["A2:A10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}' Read and output values from a range of cells elegantly
For Each cell In worksheet("A2:A10")
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell다음 코드 샘플은 워크북 및 워크시트를 로드하고 읽은 후 공식 업데이트 또는 특정 셀에 적용하는 방법을 보여줍니다. 다음은 코드입니다:
// Set formulas for specific cells
worksheet["A1"].Formula = "Sum(B8:C12)";
worksheet["B8"].Formula = "=C9/C11";
worksheet["G30"].Formula = "Max(C3:C7)";
// Force recalculate all formula values in all sheets
workbook.EvaluateAll();' Set formulas for specific cells
worksheet("A1").Formula = "Sum(B8:C12)"
worksheet("B8").Formula = "=C9/C11"
worksheet("G30").Formula = "Max(C3:C7)"
' Force recalculate all formula values in all sheets
workbook.EvaluateAll()결론 및 IronXL 특별 제공
IronXL은 C#에서 CSV 처리를 수행하는 것 외에도 CSV를 Excel로 두 줄의 코드만 사용하여 변환합니다.
Interop을 필요로 하지 않으면서 IronXL의 Excel API를 사용하는 것은 매우 쉽습니다. 게다가 IronXL은 Excel WorkBook, WorkSheet 및 셀 수준에서 인기 형식 간 변환, 셀 데이터 포맷팅, 셀 병합, 수학 함수 삽입 심지어 차트를 관리하고 이미지 추가 등의 다양한 기능을 제공합니다.
IronXL 체험판 라이센스 키를 사용하여 워터마크 없이 시작할 수 있습니다.
라이선스는 $999부터 시작하며, 1년간 무료 지원과 업데이트가 포함됩니다.
IronPDF, IronXL, IronOCR, IronBarcode, 그리고 IronWebScraper는 모두 Iron Software Suite의 일부입니다. Iron Software는 전체 패키지를 할인된 가격에 구입할 수 있게 합니다. 이러한 모든 도구를 두 개의 가격으로 사용할 수 있습니다.
이것은 탐험할 만한 옵션입니다.

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



