كيفية القراءة من والكتابة إلى ملف نصي باستخدام Visual C #


الملخص


توضح هذه المقالة خطوة بخطوة كيفية القراءة من والكتابة إلى ملف نصي باستخدام Visual C#. عودة إلى الأعلى

المتطلبات

توضح القائمة التالية الأجهزة الموصى بها برامج البنية الأساسية للشبكة وحزم الخدمات التي يجب أن يكون لديك:
  • Visual C #
تفترض هذه المقالة أنك معتاد على الموضوع التالي:
  • Visual C #
عودة إلى الأعلى

قراءة وكتابه ملفات نصية

يصف القسم القراءة من "ملف نصي" من هذه المقالة كيفية استخدام فئة StreamReader لقراءة ملف نصي. كتابة "ملف نصي" (المثال 1) ومقاطع كتابة "ملف نصي" (المثال 2) تصف كيفية استخدام فئة StreamWriter لكتابة نص إلى ملف. عودة إلى الأعلى

قراءة ملف نصي

تستخدم التعليمة البرمجية التالية فئة StreamReader فتح للقراءة وأغلق الملف النصي. يمكنك تمرير مسار الملف النصي لمنشئ StreamReader لفتح الملف تلقائياً. الأسلوب ReadLine بقراءة كل سطر من النص، وزيادة مؤشر الملف إلى السطر التالي نصه. عندما يصل الأسلوب ReadLine إلى نهاية الملف، تقوم بإرجاع مرجع فارغ.
  1. إنشاء نموذج ملف نص في "المفكرة". للقيام بذلك، اتبع الخطوات التالية:
    1. لصق النص التالي في "المفكرة":
      hello world
    2. حفظ الملف ك Sample.txt.
  2. بدء تشغيل Microsoft Visual Studio.
  3. من القائمة ملف، أشر إلى جديد ثم انقر فوق المشروع.
  4. انقر فوق مشاريع Visual C# ضمن أنواع المشاريع، وثم انقر فوق تطبيق وحدة التحكم ضمن قوالبالملاحظة في Visual Studio 2008 أو Visual Studio 2005، انقر فوق Visual C# ضمن أنواع المشاريع، ومن ثم انقر فوق تطبيق وحدة التحكم ضمن قوالب.
  5. أضف التعليمات البرمجية التالية في بداية الملف Class1.cs:
    using System.IO;
    ملاحظة: في Visual Studio 2008 أو Visual Studio 2005 الملف الافتراضي هو برنامج. cs.
  6. أضف التعليمات البرمجية التالية إلى الأسلوب الرئيسي :
    String line;try {//Pass the file path and file name to the StreamReader constructorStreamReader sr = new StreamReader("C:\\Sample.txt");//Read the first line of textline = sr.ReadLine();//Continue to read until you reach end of filewhile (line != null) {//write the lie to console windowConsole.WriteLine(line);//Read the next lineline = sr.ReadLine();}//close the filesr.Close();Console.ReadLine();}catch(Exception e){Console.WriteLine("Exception: " + e.Message);}   finally {Console.WriteLine("Executing finally block.");}
  7. في القائمة " تصحيح "، انقر فوق ابدأ لترجمة وتشغيل التطبيق. اضغط ENTER لإغلاق إطار وحدة التحكم. يعرض إطار وحدة التحكم محتويات الملف Sample.txt.
    Hello world
عودة إلى الأعلى

كتابة ملف نصي (على سبيل المثال 1)

تستخدم التعليمة البرمجية التالية فئة StreamWriter فتح كتابة وأغلق الملف النصي. على نحو مماثل لفئة StreamReader ، يمكنك تمرير مسار الملف النصي منشئ StreamWriter لفتح الملف تلقائياً. يكتب الأسلوب WriteLine إكمال سطر من النص إلى ملف نصي.
  1. بدء تشغيل Visual Studio.
  2. من القائمة ملف، أشر إلى جديد ثم انقر فوق المشروع.
  3. انقر فوق مشاريع Visual C# ضمن أنواع المشروعومن ثم انقر فوق تطبيق وحدة التحكم ضمن قوالب. ملاحظة: في Visual Studio 2008 أو في Visual Studio 2005، انقر فوق Visual C# ضمن أنواع المشروعومن ثم انقر فوق تطبيق وحدة التحكم CLR ضمن قوالب.
  4. أضف التعليمات البرمجية التالية في بداية الملف Class1.cs:
    using System.IO;
  5. أضف التعليمات البرمجية التالية إلى الأسلوب الرئيسي :
    try {//Pass the filepath and filename to the StreamWriter ConstructorStreamWriter sw = new StreamWriter("C:\\Test.txt");//Write a line of textsw.WriteLine("Hello World!!");//Write a second line of textsw.WriteLine("From the StreamWriter class");//Close the filesw.Close();}catch(Exception e){Console.WriteLine("Exception: " + e.Message);}finally {Console.WriteLine("Executing finally block.");}
  6. في القائمة " تصحيح "، انقر فوق ابدأ لترجمة وتشغيل التطبيق. هذه التعليمات البرمجية بإنشاء ملف يسمى Test.txt على محرك الأقراص C. Test.txt مفتوحة في محرر نص مثل المفكرة. يحتوي Test.txt على سطرين من النص:
    Hello World!!From the StreamWriter class
عودة إلى الأعلى

كتابة ملف نصي (على سبيل المثال 2)

تستخدم التعليمة البرمجية التالية فئة StreamWriter فتح كتابة وأغلق الملف النصي. خلافا للمثال السابق، التعليمات البرمجية هذا بتمرير معلمتين من معلمات إضافية المنشئ. المعلمة الأولى هي مسار الملف واسم الملف للملف. تعين المعلمة الثانية True، يتم فتح الملف في حالة الإلحاق. إذا حددت خطأ للمعلمة الثانية، تتم الكتابة فوق محتويات الملف في كل مرة تقوم بتشغيل التعليمات البرمجية. تعين المعلمة الثالثة Unicode، حيث أن StreamWriter ترميز الملف بتنسيق Unicode. يمكنك أيضا تحديد أساليب الترميز التالية للمعلمة الثالثة:
  • ASC11
  • Unicode
  • UTF7
  • UTF8
يشبه أسلوب كتابة الأسلوب الإشارة ، فيما عدا أن أسلوب الكتابة لا تلقائياً يقوم بتضمين حرف إرجاع أو تغذية سطر تركيبة أحرف (CR/LF). هذا مفيد عندما تريد كتابة حرف واحد في مرة الواحدة.
  1. بدء تشغيل Visual Studio.
  2. من القائمة ملف، أشر إلى جديد ثم انقر فوق المشروع.
  3. انقر فوق مشاريع Visual C# ضمن أنواع المشاريع، وثم انقر فوق تطبيق وحدة التحكم ضمن قوالبالملاحظة في Visual Studio 2008 أو Visual Studio 2005، انقر فوق Visual C# ضمن أنواع المشاريع، ومن ثم انقر فوق تطبيق وحدة التحكم ضمن قوالب
  4. أضف التعليمات البرمجية التالية في بداية الملف Class1.cs :
    using System.IO;using System.Text;
    ملاحظة: في Visual Studio 2008 أو Visual Studio 2005 الملف الافتراضي هو برنامج. cs.
  5. أضف التعليمات البرمجية التالية إلى الأسلوب الرئيسي :
    Int64 x;try {//Open the FileStreamWriter sw = new StreamWriter("C:\\Test1.txt", true, Encoding.ASCII);//Writeout the numbers 1 to 10 on the same line.for(x=0; x < 10; x++){sw.Write(x);}//close the filesw.Close();}catch(Exception e){Console.WriteLine("Exception: " + e.Message);}finally {Console.WriteLine("Executing finally block.");}
  6. في القائمة " تصحيح "، انقر فوقابدأ لترجمة وتشغيل التطبيق. هذه التعليمات البرمجية بإنشاء ملف يسمى Test1.txt على محرك الأقراص C. Test1.txt مفتوحة في محرر نص مثل المفكرة. Test1.txt يحتوي على سطر واحد من النص:
    0123456789
عودة إلى الأعلى

إتمام سرد التعليمات البرمجية

  • قراءة ملف نصي
    //Read a Text Fileusing System;using System.IO;namespace readwriteapp{class Class1{[STAThread]static void Main(string[] args){String line;try {//Pass the file path and file name to the StreamReader constructorStreamReader sr = new StreamReader("C:\\Sample.txt");//Read the first line of textline = sr.ReadLine();//Continue to read until you reach end of filewhile (line != null) {//write the lie to console windowConsole.WriteLine(line);//Read the next lineline = sr.ReadLine();}//close the filesr.Close();Console.ReadLine();}catch(Exception e){Console.WriteLine("Exception: " + e.Message);}finally {Console.WriteLine("Executing finally block.");}}}}
  • كتابة ملف نصي (الإصدار 1)
    //Write a text file - Version-1using System;using System.IO;namespace readwriteapp{class Class1{[STAThread]static void Main(string[] args) {try {//Pass the filepath and filename to the StreamWriter ConstructorStreamWriter sw = new StreamWriter("C:\\Test.txt");//Write a line of textsw.WriteLine("Hello World!!");//Write a second line of textsw.WriteLine("From the StreamWriter class");//Close the filesw.Close();}catch(Exception e){Console.WriteLine("Exception: " + e.Message);}finally {Console.WriteLine("Executing finally block.");}}}}
  • كتابة ملف نصي (الإصدار 2)
    //Write a text file  - Version 2using System;using System.IO;using System.Text;namespace readwriteapp{class Class1{[STAThread]static void Main(string[] args) {   Int64 x;try {//Open the FileStreamWriter sw = new StreamWriter("C:\\Test1.txt", true, Encoding.ASCII);//Writeout the numbers 1 to 10 on the same line.for(x=0; x < 10; x++){sw.Write(x);}//close the filesw.Close();}catch(Exception e){Console.WriteLine("Exception: " + e.Message);}finally {Console.WriteLine("Executing finally block.");}}}}

استكشاف أخطاء وإصلاحها

لكافة المعالجات الملف، يتم تدريب برمجي جيد لالتفاف التعليمات البرمجية داخل كتلة المحاولة-catch-وأخيراً لمعالجة الأخطاء والاستثناءات. وبوجه خاص، قد تحتاج إلى تحرير المقابض للملف في المقطع النهائي حتى لا يتم تأمين الملف إلى أجل غير مسمى. تتضمن بعض الأخطاء المحتملة ملف غير موجود، أو ملف قيد الاستخدام بالفعل. عودة إلى الأعلى

المراجع


لمزيد من المعلومات، قم بزيارة موقع شبكة مطوري Microsoft (MSDN) التالي على الويب:عودة إلى الأعلى