فایل های CSV را بشناسید و یاد بگیرید که چگونه آنها را با استفاده از سی شارپ ایجاد کنید.
ذخیره داده ها در یک فایل می تواند یک تکنیک بسیار قدرتمند برای تجزیه و تحلیل یا گزارش داده ها باشد. اگر در حال ایجاد یک برنامه C# هستید، می توانید فایل های CSV برای ذخیره داده های خود ایجاد کنید.
فایلهای CSV فایلهای متنی هستند که میتوانید مقادیر را در آنها ذخیره کنید. میتوانید هر نقطه داده را با افزودن کاما بین مقادیر جدا کنید. این به شما امکان می دهد داده های خود را در ردیف ها و ستون ها سازماندهی کنید. پس از باز کردن فایل در مایکروسافت اکسل، میتوانید این ردیفها و ستونها را تجسم کنید.
چگونه داده ها را در یک فایل CSV ذخیره می کنید؟
یک فایل CSV یک فایل متنی است که در آن می توانید نقاط داده و مقادیر را با کاما جدا کنید.
هنگام ذخیره داده ها در یک فایل با استفاده از یک برنامه، هر ردیف را به عنوان یک خط جداگانه اضافه کنید. برای ایجاد ستون ها، داده ها را با افزودن یک کاما برای جدا کردن هر مقدار یا نقطه داده، فرمت کنید.
StringBuilder output = new StringBuilder();
output.AppendLine(string.Join(",", newString[] { "1", "2", "3" }));
// CSV File Output = 1,2,3
نحوه ایجاد برنامه کنسول و داده های تست
با استفاده از ویژوال استودیو یک برنامه کنسول سی شارپ ایجاد کنید و داده های آزمایشی را به برنامه اضافه کنید.
- Visual Studio را باز کرده و روی Create a new project کلیک کنید.
- روی Console Application کلیک کرده و Next را بزنید.
- پروژه خود را نامگذاری کنید و آن را در مکانی دلخواه ذخیره کنید. روی Next کلیک کنید.
- چارچوب هدف پیش فرض را رها کرده و روی Create کلیک کنید. این باعث میشود که ویژوال استودیو یک برنامه پیشفرض کنسول سی شارپ «Hello World» تولید کند.
- در بالای برنامه، System.IO و System.Text را وارد کنید. این به شما امکان می دهد داده ها را در فایل CSV ذخیره کنید و همچنین به فرمت رشته برای CSV format.usingSystem.IO;usingSystem.Text;
- مقداری داده تست را به برنامه اضافه کنید. در زیر کلاس برنامه اصلی، یک کلاس جدید به نام Student ایجاد کنید. از کلاس Student برای ذخیره اطلاعات مربوط به دانش آموزان، مانند شناسه دانشجویی، نام، نام خانوادگی و تاریخ تولد استفاده کنید. اگر با نحوه کار کلاسها آشنا نیستید، میتوانید درباره کلاسها در C#.publicclassStudent{ publicint StudentId; رشته عمومی FirstName; رشته عمومی LastName; رشته عمومی Dob; publicStudent(int StudentId, string FirstName, string LastName, string Dob) { this.StudentId = StudentId; this.FirstName = FirstName; this.LastName = LastName; this.Dob = Dob; }}
- در داخل تابع Main() کد موجود “Hello World” را حذف کنید. آن را با یک آرایه جدید از دانشآموزان جایگزین کنید: staticvoid Main(string[] args){ // ایجاد آرایه با فهرستی از دانشآموزان Student[] Students = { New Student(1, “John”, “Smith”, “03/04/ 1990)، دانشجوی جدید (2، «آدام»، «ون هوتن»، «07/07/1991»)، دانشجوی جدید (3، «جوی»، «ریچاردسون»، «01/02/1992»)، جدید دانشجو (4، «مت»، «آدامز»، «05/05/1992»)، دانشجوی جدید (5، «جیک»، «اسمیت»، «04/04/1994»)، }؛ }
usingSystem.IO;
usingSystem.Text;
publicclassStudent
{
publicint StudentId;
public string FirstName;
public string LastName;
public string Dob;
publicStudent(int StudentId, string FirstName, string LastName, string Dob)
{
this.StudentId = StudentId;
this.FirstName = FirstName;
this.LastName = LastName;
this.Dob = Dob;
}
}
staticvoid Main(string[] args)
{
// Create an arraywith a listof students
Student[] students =
{
new Student(1, "John", "Smith", "03/04/1990"),
new Student(2, "Adam", "Van Houten", "07/07/1991"),
new Student(3, "Joey", "Richardson", "01/02/1992"),
new Student(4, "Matt", "Adams", "05/05/1992"),
new Student(5, "Jake", "Smith", "04/04/1994"),
};
}
نحوه ایجاد یک فایل CSV جدید و اضافه کردن سرفصل
از مسیر فایل برای ایجاد فایل CSV جدید استفاده کنید و سرفصل ها را به فایل اضافه کنید.
- در تابع Main() در زیر لیست دانشجویان، یک فایل CSV جدید ایجاد کنید. از یک مسیر فایل برای تعیین محل ذخیره فایل استفاده کنید. اگر فایل وجود نداشته باشد، برنامه به طور خودکار یک فایل CSV جدید در آن مکان ایجاد می کند. فایل رشته = @”C:\Users\Sharl\Desktop\Output.csv”;
- از StringBuilder برای ایجاد یک رشته فرمت شده جدید استفاده کنید. از متغیر جداکننده برای ذخیره کاما استفاده کنید که هر مقدار را برای هر ستون جدا می کند. جداکننده رشته = “,”; خروجی StringBuilder = new StringBuilder();
- سرفصل های ردیف بالای فایل CSV را ایجاد کنید. سرفصل ها را برای شناسه دانشجو، نام، نام خانوادگی و تاریخ تولد دانش آموز اضافه کنید. سرفصل های رشته[] = { “StudentID”, “First Name”, “Last Name”, “Date Of Birth” };output.AppendLine( string.Join(جداکننده، سرفصل ها));
String file = @"C:\Users\Sharl\Desktop\Output.csv";
String separator = ",";
StringBuilder output = new StringBuilder();
String[] headings = { "StudentID", "First Name", "Last Name", "Date Of Birth" };
output.AppendLine(string.Join(separator, headings));
نحوه ذخیره مقادیر در فایل CSV
برای هر دانش آموز در آرایه دانش آموزان، یک ردیف جدید ایجاد کنید تا جزئیات آنها در فایل CSV ذخیره شود.
- برای هر دانش آموز یک حلقه for اضافه کنید. هر دانش آموز مشخصات خود را (از جمله شناسه دانشجو، نام، نام خانوادگی و تاریخ تولد) در ردیف دیگری از فایل CSV نشان می دهد.foreach (دانشجوی دانشجو در دانش آموزان){}
- در داخل حلقه for، لیستی از ویژگی های دانش آموز ایجاد کنید. از StringBuilder برای قالب بندی رشته برای افزودن کاما بین هر مقدار استفاده کنید. String[] newLine = { student.StudentId.ToString(), student.FirstName, student.LastName, student.Dob };output.AppendLine(string.Join( جداکننده، newLine))؛
- همچنین، میتوانید ردیف را با استفاده از string.Format قالببندی کنید، به جای StringBuilder.string newLine = string.Format(“{0}, {1}, {2}, {3}”, student.StudentId.ToString(), student.FirstName, student.LastName, student.Dob);output.AppendLine(string.Join(separator, newLine));
- بعد از حلقه for، تمام داده ها را در فایل بنویسید. یک بلوک try-catch اضافه کنید تا مشکلات احتمالی را که ممکن است هنگام نوشتن داده ها در فایل رخ دهد، پیدا کنید. اگر برنامه نتواند فایل را با موفقیت ذخیره کند، مطمئن میشود که برنامه خراب نمیشود. سعی کنید{ File.AppendAllText(file, output.ToString());}catch(Exception ex){ Console.WriteLine(«دادهها نمیتوانند باشند در فایل CSV نوشته شده است.”); برگشت؛}
- به کاربر اطلاع دهید که برنامه توانسته است فایل را با موفقیت ایجاد کند.Console.WriteLine(“داده ها با موفقیت در فایل CSV ذخیره شدند”);
foreach (Student student in students)
{
}
String[] newLine = { student.StudentId.ToString(), student.FirstName, student.LastName, student.Dob };
output.AppendLine(string.Join(separator, newLine));
string newLine = string.Format("{0}, {1}, {2}, {3}", student.StudentId.ToString(), student.FirstName, student.LastName, student.Dob);
output.AppendLine(string.Join(separator, newLine));
try
{
File.AppendAllText(file, output.ToString());
}
catch(Exception ex)
{
Console.WriteLine("Data could not be written to the CSV file.");
return;
}
Console.WriteLine("The data has been successfully saved to the CSV file");
نحوه مشاهده داده های موجود در فایل
برنامه را اجرا کنید و به محل فایل CSV ایجاد شده بروید تا باز شود.
- روی دکمه سبز رنگ play در بالای پنجره ویژوال استودیو کلیک کنید.
- منتظر بمانید تا برنامه کنسول پیام موفقیت را کامپایل کرده و نمایش دهد.
- به مکانی که فایل خود را در آن ذخیره کرده اید بروید و فایل Output.csv تازه ایجاد شده را باز کنید. فایل را با استفاده از Microsoft Excel باز کنید تا داده ها را به صورت سطر و ستون مشاهده کنید.
- فایل CSV را با استفاده از هر ویرایشگر متنی مانند Notepad++ باز کنید تا داده های قالب بندی شده را که با کاما از هم جدا شده اند مشاهده کنید.
ذخیره داده ها در فایل های CSV با استفاده از C#
می توانید داده ها را در برنامه C# خود با نوشتن آن در یک فایل CSV ذخیره کنید. بسته به داده ها، می توانید هر شی یا مجموعه ای از داده ها را به عنوان یک ردیف جداگانه اضافه کنید. از کاما برای جدا کردن هر نقطه یا مقدار داده به ستون استفاده کنید.
می توانید یک CSV خام را در یک ویرایشگر متن مشاهده کنید تا نقاط داده فرمت شده خود را ببینید. همچنین می توانید فایل CSV خود را برای مشاهده بصری ردیف ها و ستون ها با استفاده از Microsoft Excel مشاهده کنید.
راه های زیادی وجود دارد که می توانید داده ها را در فایل های CSV بنویسید. همچنین میتوانید نحوه نوشتن داده در فایلهای CSV با استفاده از Node.js را بررسی کنید.