دانلود نمونه سورس کد استخراج داده‌های فایل CSV در سی‌شارپ


در دنیای برنامه‌نویسی، کار با فایل‌های CSV یکی از نیازهای رایج و پرکاربرد است که هر توسعه‌دهنده‌ای باید توانایی خواندن و استخراج داده‌های موجود در این نوع فایل‌ها را داشته باشد. فایل‌های CSV یا Comma-Separated Values، قالبی ساده و متداول برای ذخیره‌سازی داده‌ها هستند که به راحتی توسط نرم‌افزارهای مختلف مانند Excel، Google Sheets، و برنامه‌های کاربردی دیگر قابل خواندن و ویرایش هستند. در زبان برنامه‌نویسی سی‌شارپ (C#) نیز، این فرآیند به شکل آسان و کارآمد قابل انجام است، و با کمک نمونه سورس کدهای آماده، می‌توان در کوتاه‌ترین زمان ممکن به هدف مورد نظر دست یافت.
در ادامه، به طور جامع و کامل، درباره نحوه استخراج داده‌های فایل CSV در سی‌شارپ، اهمیت آن، و نمونه سورس‌های کاربردی صحبت خواهیم کرد. هدف اصلی از این متن، آموزش کامل و کاربردی است تا بتوانید در پروژه‌های خود از آن بهره‌مند شوید، و به راحتی داده‌های مورد نیازتان را استخراج و مدیریت کنید.
مفهوم و اهمیت فایل CSV در برنامه‌نویسی
قبل از ورود به جزئیات فنی، باید درک کنیم که فایل CSV چه نقشی در برنامه‌نویسی و داده‌کاوی دارد. این نوع فایل، چارچوبی بسیار ساده دارد، جایی که هر خط نمایانگر یک رکورد است، و هر رکورد توسط کاما (یا دیگر جداکننده‌ها مثل سمی‌کالن یا تب) جدا شده است. به عنوان مثال، اگر فایلی حاوی اطلاعات کاربران باشد، ممکن است به صورت زیر باشد:
csv  

ID,Name,Email,Age

1,Ali,ali@example.com,25

2,Sara,sara@example.com,30

3,Reza,reza@example.com,28


این ساختار، بسیار ساده است، اما در عین حال، قدرتمند و کاربردی است، چون داده‌ها به راحتی قابل خواندن و تحلیل هستند. برنامه‌نویسان در پروژه‌های مختلف، از جمله ساخت سیستم‌های مدیریت داده، گزارش‌گیری، تحلیل داده‌ها، و حتی ساختن نرم‌افزارهای تجاری، نیاز دارند که این فایل‌ها را خوانده، داده‌ها را استخراج و در برنامه‌های خود پردازش کنند.
نحوه استخراج داده‌های CSV در سی‌شارپ
در زبان سی‌شارپ، چند روش مختلف برای خواندن و استخراج داده‌های فایل CSV وجود دارد. یکی از ساده‌ترین و رایج‌ترین روش‌ها، استفاده از کلاس‌های موجود در فضای نام `System.IO` است، به خصوص کلاس `StreamReader`. همچنین، می‌توان از کتابخانه‌های شخص ثالث مانند CsvHelper بهره برد تا فرآیند را ساده‌تر و منظم‌تر انجام داد. در ادامه، هر دو روش را بررسی می‌کنیم.
روش اول: استفاده از `StreamReader`
در این روش، فایل CSV باز می‌شود، سطر به سطر خوانده می‌شود، و هر خط به صورت رشته‌ای جدا شده، به آرایه‌ای از رشته‌ها تبدیل می‌گردد. سپس، داده‌ها در ساختارهای داده‌ای مانند لیست یا آرایه ذخیره می‌شوند.
نمونه کد:
csharp  

using System;

using System.Collections.Generic;

using System.IO;
class Program

{

static void Main()

{

string filePath = "data.csv";

List<string[]> data = new List<string[]>();
using (StreamReader reader = new StreamReader(filePath))

{

string line;

while ((line = reader.ReadLine()) != null)

{

string[] fields = line.Split(',');

data.Add(fields);

}

}
// نمایش داده‌ها

foreach (var row in data)

{

Console.WriteLine(string.Join(" | ", row));

}

}

}


در این نمونه، فایل `data.csv` خوانده می‌شود، هر خط جدا شده، و در لیستی از آرایه‌های رشته‌ای قرار می‌گیرد. البته، در این حالت، باید توجه داشت که اگر داده‌ها شامل کاما در داخل مقادیر باشند، این روش ممکن است مشکل‌ساز شود... ← ادامه مطلب در magicfile.ir