C# هي لغة برمجة حديثة ذات أغراض عامة وموجهة للكائنات تم تطويرها بواسطة Microsoft. إن تعدد استخداماته جعله شائعًا، وأثبت أنه وسيلة فعالة بشكل لا يصدق للمطورين لإنشاء تطبيقات قوية وآمنة. أحد المجالات التي تتألق فيها C# هو معالجة الملفات، مثل قراءة ملف نصي. تتضمن هذه العملية تحميل البيانات من ملف نصي ومعالجتها وفقًا لاحتياجاتنا. ولكن قبل أن نتعمق في المنهجية، من المهم أن نفهم سبب أهمية المهمة، ومتى يمكن أن تدخل حيز الاستخدام.
ضرورة قراءة الملفات النصية
في كثير من الأحيان يتم التقليل من استخدام البيانات من الملفات النصية. ومع ذلك، في تطبيقات C#، قد يخدم هذا مجموعة متنوعة من الأغراض. من كونها طريقة بسيطة لتخزين البيانات دون الحاجة إلى قاعدة بيانات، إلى كونها الطريقة الوحيدة لاستيراد البيانات أو تصديرها في بيئات معينة، فإن الملفات النصية بعيدة كل البعد عن كونها قديمة.
في الممارسة العملية، قد تحتاج إلى الاستفادة من الملفات النصية عند تكوين الإعدادات، أو تحميل حالة مستوى اللعبة في اللعبة. إنها أيضًا طريقة شائعة لتسجيل الأخطاء وأنشطة التطبيق.
الشروع في العمل مع فئة StreamReader
تتم قراءة ملف نصي في C# باستخدام StreamReader فئة، والتي تعد جزءًا من مساحة الاسم System.IO. ومن الجدير بالذكر أن فئة StreamReader ليست مسؤولة بشكل مباشر عن قراءة الملف النصي، بل تعمل كوكيل بين الملف والبرنامج. والغرض الأساسي منه هو قراءة الأحرف من دفق بايت في ترميز معين.
باستخدام System.IO ؛
برنامج الطبقة العامة
{
فراغ ثابت عام رئيسي (سلسلة [] args)
{
باستخدام (قارئ StreamReader = StreamReader الجديد ("filePath"))
{
خط السلسلة
while((line = Reader.ReadLine())!= null)
{
System.Console.WriteLine(line);
}
}
}
}
فهم الكود المقدم
في برنامج C# أعلاه، عليك أولاً تحديد مسار الملف النصي في مُنشئ StreamReader. تتم بعد ذلك قراءة الملف سطرًا تلو الآخر باستخدام طريقة ReadLine لفئة StreamReader داخل حلقة while. طالما أن هناك أسطرًا في الملف النصي المراد قراءتها (على سبيل المثال، نتيجة أسلوب ReadLine ليست فارغة)، تستمر الحلقة. تتم بعد ذلك كتابة السطر الذي تتم قراءته إلى وحدة التحكم باستخدام Console.WriteLine. يؤدي بيان الاستخدام إلى إغلاق StreamReader تلقائيًا بمجرد اكتمال مهمته، مما يوفر علينا مشكلة تحرير الموارد غير المُدارة يدويًا.
العمل مع فئة الملف
وبدلاً من ذلك، يعد استخدام فئة الملف التي يوفرها .NET أيضًا طريقة فعالة لقراءة الملفات النصية. ويوفر أساليب لمعالجة الملفات والدلائل. تعتبر أساليب ReadAllLines وReadAllText لفئة File سهلة الاستخدام وموجزة.
باستخدام System.IO ؛
برنامج الطبقة العامة
{
فراغ ثابت عام رئيسي (سلسلة [] args)
{
سلسلة [] خطوط = File.ReadAllLines("filePath");
foreach (خط السلسلة في السطور)
{
System.Console.WriteLine(line);
}
}
}
شرح الكود
في هذا الإصدار من برنامج C#، نستخدم طريقة ReadAllLines لفئة File لقراءة كافة أسطر الملف النصي في مصفوفة سلسلة في عملية واحدة. نقوم بعد ذلك بالتكرار خلال كل سطر في مصفوفة السلسلة باستخدام حلقة foreach، ونكتب السطر إلى وحدة التحكم.
هذه مجرد أمثلة أساسية لكيفية قراءة الملفات النصية في C#. اعتمادًا على التطبيق الخاص بك، قد تحتاج إلى معالجة الاستثناءات، أو التحقق من وجود الملف قبل محاولة قراءته، أو إجراء عمليات معالجة أخرى على البيانات.