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

 

في هذه المقالة سوف أشرح استخدام StreamReader و StreamWriter Class للقراءة والكتابة من والى ملف نصي في Asp.Net باستخدام كل من#C و VB .

Reading and writing text file in asp.net

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

اولا : نقوم بفتح مشروع جديد ونقوم باضافة ملف باسم TestFolder سيتم انشاء ملف نصي بداخله بعد التنفيذ كما في الصوره التالية :1
ثانيا : نقوم باضافة الادوات التي سنحتاجها في الصفحة (TextBox and Button)  للقراءة وللكتابة من ملف نصي:

555
ثالثا : نقوم بفتح نافذة الكود ونقوم بتضمين المكتبه System.IO كما في الصورة
2
رابعاً : نقوم باضافة كود الكتابه والقراءة من والى ملف نصي :
ملاحظة : وظيفة فئة StreamWriter إنشاء ملف نص إذا كان غير موجود والكتابة فيه ومن القراءة منه مرة أخرى.

#Asp.Net C

protected void btnWrite_Click(object sender, EventArgs e)
    {
        WriteToFile("testFile.txt");
    }
    protected void btnRead_Click(object sender, EventArgs e)
    {
        txtReadContent.Text = ReadFromFile("testFile.txt");
    }
    private void WriteToFile(String fileName)
    {
        string filePath = Path.Combine(Request.PhysicalApplicationPath, string.Format("{0}\\{1}", "TestFolder", fileName));
        //OR string filePath = System.IO.Path.Combine(Server.MapPath("~/TestFolder"), fileName);
        using (StreamWriter sw = new StreamWriter(filePath))
        {
            sw.WriteLine(txtWriteContent.Text);
        }
    }
    public string ReadFromFile(String fileName)
    {
        string fileText = string.Empty;
        string filePath = Path.Combine(Request.PhysicalApplicationPath, string.Format("{0}\\{1}", "TestFolder", fileName));
        //OR string filePath = System.IO.Path.Combine(Server.MapPath("~/TestFolder"), fileName);

        if (File.Exists(filePath))
        {
            using (StreamReader sr = new StreamReader(filePath))
            {
                fileText = sr.ReadToEnd();
            }
        }
        return fileText;
    }

Asp.Net VB

Protected Sub btnRead_Click(sender As Object, e As EventArgs)
txtReadContent.Text = ReadFromFile("testFile.txt")
End Sub
Protected Sub btnWrite_Click(sender As Object, e As EventArgs)
WriteToFile("testFile.txt")
End Sub
Public Function ReadFromFile(fileName As [String]) As String
Dim fileText As String = String.Empty
Dim filePath As String = Path.Combine(Request.PhysicalApplicationPath, String.Format("{0}\{1}", "TestFolder", fileName))
'OR string filePath = System.IO.Path.Combine(Server.MapPath("~/TestFolder"), fileName);

If File.Exists(filePath) Then
Using sr As New StreamReader(filePath)
fileText = sr.ReadToEnd()
End Using
End If
Return fileText
End Function
Private Sub WriteToFile(fileName As [String])
Dim filePath As String = Path.Combine(Request.PhysicalApplicationPath, String.Format("{0}\{1}", "TestFolder", fileName))
'OR string filePath = System.IO.Path.Combine(Server.MapPath("~/TestFolder"), fileName);
Using sw As New StreamWriter(filePath)
sw.WriteLine(txtWriteContent.Text)
End Using
End Sub

تحميل المثال من هنا