خواندن فایل اکسل در سی‌ شارپ

خواندن فایل اکسل در سی‌ شارپ
فهرست مقاله [نمایش]

    فایل‌های اکسل به دلیل قابلیت‌های ویرایش، مرتب‌سازی، و تحلیل داده‌ها، یکی از محبوب‌ترین فرمت‌ها در دنیا هستند. اگر شما یک برنامه‌نویس هستید و نیاز دارید که اطلاعات موجود در یک فایل اکسل را به برنامه خود بیاورید، زبان برنامه‌نویسی سی‌ شارپ و کتابخانه‌های مرتبط به شما این امکان را می‌دهند. در این مقاله به شما توضیح می‌دهیم که چگونه به سادگی فایل‌های اکسل را در سی‌ شارپ بخوانید و اطلاعات آن را پردازش کنید.

    گام اول: نصب کتابخانه EPPlus

    برای خواندن و نوشتن فایل‌های اکسل در سی‌ شارپ، از کتابخانه‌های مختلفی می‌توان استفاده کرد. یکی از بهترین کتابخانه‌ها EPPlus است که امکان کار با فایل‌های اکسل با فرمت‌های .xlsx را فراهم می‌کند.

    نحوه نصب کتابخانه EPPlus:

    باز کردن NuGet Package Manager در ویژوال استودیو.

    اجرای دستور زیر برای نصب کتابخانه EPPlus:

    Install-Package EPPlus
    

    با این کار، کتابخانه EPPlus به پروژه شما اضافه می‌شود و می‌توانید از آن برای خواندن و نوشتن فایل‌های اکسل استفاده کنید.

    گام دوم: خواندن فایل اکسل
     

    حالا که کتابخانه نصب شده، بیایید یک فایل اکسل را بخوانیم. در این بخش، نحوه خواندن اطلاعات از یک فایل اکسل و نمایش آن در کنسول را بررسی می‌کنیم.

    مثال کدنویسی برای خواندن فایل اکسل:

    using OfficeOpenXml;
    using System;
    using System.IO;
    
    class Program
    {
        static void Main()
        {
            // مسیر فایل اکسل
            var fileInfo = new FileInfo(@"C:\مسیر\فایل\شما.xlsx");
    
            // باز کردن فایل اکسل
            using (var package = new ExcelPackage(fileInfo))
            {
                // دسترسی به ورق اول (Sheet 1)
                var worksheet = package.Workbook.Worksheets[0];
    
                // خواندن مقدار سلول اول (A1)
                var value = worksheet.Cells[1, 1].Text;
    
                // نمایش مقدار سلول
                Console.WriteLine($"مقدار سلول اول: {value}");
            }
        }
    }
    

    توضیحات:
    FileInfo: این کلاس برای مشخص کردن مسیر فایل اکسل استفاده می‌شود.
    ExcelPackage: با استفاده از این کلاس می‌توانیم به فایل اکسل دسترسی پیدا کنیم.
    Worksheets[0]: به اولین ورق (Sheet) اکسل دسترسی پیدا می‌کند.
    Cells[1, 1].Text: مقدار سلول A1 را می‌خواند.

    مثال‌های کاربردی برای خواندن داده‌ها

    مثال 1: ذخیره اطلاعات فایل اکسل در یک دیکشنری

    فرض کنید می‌خواهید اطلاعات موجود در فایل اکسل خود را به صورت یک دیکشنری در برنامه ذخیره کنید. این کار بسیار مفید است، به خصوص اگر اطلاعات کلید و مقدار (key-value) داشته باشید.

    Dictionary<string, string> dataDictionary = new Dictionary<string, string>();
    
    for (int row = 2; row <= worksheet.Dimension.Rows; row++) // از ردیف دوم شروع می‌کنیم
    {
        string key = worksheet.Cells[row, 1].Text; // ستون اول کلید
        string value = worksheet.Cells[row, 2].Text; // ستون دوم مقدار
        dataDictionary[key] = value; // ذخیره در دیکشنری
    }
    

    توضیحات:
    worksheet.Dimension.Rows: این مقدار تعداد ردیف‌های موجود در ورق اکسل را برمی‌گرداند.
    Cells[row, 1].Text: مقدار موجود در ستون اول (کلید) را می‌خواند.
    Cells[row, 2].Text: مقدار موجود در ستون دوم (مقدار) را می‌خواند و آن را به دیکشنری اضافه می‌کند.

    مثال 2: آپلود اطلاعات به یک پایگاه داده

    اگر نیاز دارید که اطلاعات فایل اکسل را به طور مستقیم در یک پایگاه داده ذخیره کنید، می‌توانید از کد زیر استفاده کنید. این کد فرض می‌کند که شما یک دیتابیس SQL Server دارید و می‌خواهید اطلاعات را در جدول خود وارد کنید.

    using System.Data.SqlClient;
    
    string connectionString = "your_connection_string"; // رشته اتصال به پایگاه داده
    
    using (SqlConnection conn = new SqlConnection(connectionString))
    {
        conn.Open();
        
        for (int row = 2; row <= worksheet.Dimension.Rows; row++)
        {
            string name = worksheet.Cells[row, 1].Text; // خواندن نام
            string age = worksheet.Cells[row, 2].Text;  // خواندن سن
            
            string query = "INSERT INTO Users (Name, Age) VALUES (@Name, @Age)";
            using (SqlCommand cmd = new SqlCommand(query, conn))
            {
                cmd.Parameters.AddWithValue("@Name", name);
                cmd.Parameters.AddWithValue("@Age", age);
                cmd.ExecuteNonQuery();
            }
        }
    }
    

    توضیحات:
    SqlConnection: برای اتصال به پایگاه داده SQL Server استفاده می‌شود.
    SqlCommand: برای اجرای دستورات SQL در پایگاه داده.
    AddWithValue: پارامترهایی را که از فایل اکسل خوانده شده، به دستور SQL اضافه می‌کند.

    نتیجه‌گیری

    با استفاده از سی‌ شارپ و کتابخانه‌های قدرتمند مانند EPPlus، می‌توان به راحتی اطلاعات موجود در فایل‌های اکسل را خواند و پردازش کرد. این تکنیک‌ها به شما امکان می‌دهند که داده‌ها را از اکسل بخوانید، آن‌ها را به صورت دلخواه پردازش کنید و حتی به پایگاه‌های داده منتقل کنید.

    مهم‌ترین نکته این است که استفاده از ابزارها و کتابخانه‌های مناسب می‌تواند فرایند کار با داده‌ها را سریع‌تر و کارآمدتر کند. امیدواریم که این مقاله شما را در یادگیری کار با فایل‌های اکسل در سی‌ شارپ کمک کرده باشد.

    با یادگیری سی‌ شارپ و استفاده از فایل‌های اکسل، می‌توانید دنیای جدیدی از امکانات را کشف کنید. اگر تمایل دارید به صورت حرفه‌ای با سی‌ شارپ کار کنید، پیشنهاد می‌کنم در دوره‌های آموزش سی شارپ باگتو شرکت کنید. با یادگیری بیشتر، می‌توانید برای خودتان فرصت‌های جدیدی ایجاد کنید.

    در پایان مقاله اتصال به اکسل در سی شارپ را مطالعه نمایید.

    اطلاعات نویسنده
    • نویسنده: تیم تحریریه باگتو

    ارسال دیدگاه

    برای افزودن دیدگاه خود، نیاز است ابتدا وارد حساب کاربری‌تان شوید


    دیدگاه کاربران