[c#] ما هي أبسط طريقة لكتابة محتويات StringBuilder إلى ملف نصي في .NET 1.1؟


1 Answers

للحصول على إصدار أحدث من .NET Framework ، توجد طريقة أكثر بساطة لكتابة محتويات StringBuilder إلى ملف نصي. يمكن أن يتم مع سطر واحد من التعليمات البرمجية. قد لا يكون الأمر الأكثر فعالية ، لكن ذلك لم يكن السؤال الحقيقي الآن.

System.IO.File.WriteAllText(@"C:\MyDir\MyNewTextFile.txt",sbMyStringBuilder.ToString());
Question

يجب استخدام StringBuilder بدلاً من قائمة سلسلة لوجود عالق مع .NET 1.1 لهذا المشروع. انها حقا التشنج أسلوبي ، ويجعلني أشعر أنني أرتدي جلد الفهد القديم الفاسد ودمر نادي متكتل عبر التراب.

على أي حال ، أريد أن أكتب سلسلة من رسائل التصحيح التي قمت بكتابتها في ملف للدراسة في وقت فراغي ، حيث أن هناك الكثير مما يمكن رؤيته على الشاشة (لا يحتوي MessageBox على أشرطة تمرير). بعض الطرق السهلة لكتابة ملف لا تبدو متوفرة في .NET 1.1. ليس لدي أيضًا إمكانية الوصول إلى Environment.Newline لفصل الأسطر التي قمت بإلحاقها (لا يتوفر AppendLine في هذا الإصدار القديم من StringBuilder ، سواء).

ما يكفي من الأنين ، أعتقد ... ما هي أسهل طريقة في .NET 1.1 (C #) لكتابة محتويات StringBuilder إلى ملف؟ لا يوجد محرك الأقراص "C" على الجهاز المحمول ، لذلك أعتقد أنني سوف تضطر إلى كتابته إلى "\ hereIAm.txt" أو نحو ذلك.




يتوفر StreamWriter لـ NET 1.1. ولإطار الميثاق . ما عليك سوى فتح الملف وتطبيق ToString على StringBuilder:

    StringBuilder sb = new StringBuilder();
    sb.Append(......);

    StreamWriter sw = new StreamWriter("\\hereIAm.txt", true);
    sw.Write(sb.ToString());
    sw.Close();

لاحظ أيضًا أنك تقول أنك تريد إلحاق رسائل debug بالملف (مثل السجل). في هذه الحالة ، المنشئ الصحيح لـ StreamWriter هو الذي يقبل علامة beliean append . إذا كان صحيحًا ، فحينئذٍ يحاول إلحاق ملف موجود أو إنشاء ملف جديد إذا لم يكن موجودًا.




Related