منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
الاستبدال من ملف نصي - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : الاستبدال من ملف نصي (/showthread.php?tid=7778)

الصفحات: 1 2


الاستبدال من ملف نصي - خادم الدين - 28-02-13

كيف اعمل استبدال إذا وجد السطر الأول من ملف تكست في تكست بوس ، يقوم باستبداله بالسطر الثاني من نفس الملف ؟


الاستبدال من ملف نصي - خادم الدين - 01-03-13

صعب جدا عمل ريبلاس داخل الاكواد خاصة اذا كان الكلمات كثيرة فارجو كيفية الاستبدال من نص بحيث يكون الملف خارج البرنامج


الاستبدال من ملف نصي - Aly El-Haddad - 01-03-13

كود :
Dim txt As String = System.IO.File.ReadAllText("مسار الملف النصي")
        Dim line As String() = txt.Split(vbCrLf)
        txt = txt.Replace(line(0), line(1))
        System.IO.File.WriteAllText("مسار الملف النصي", txt)



الاستبدال من ملف نصي - خادم الدين - 01-03-13

كيف يمكن التكرار ؟

يعني إذا أردت أن أقوم بعمل استبدال ل 100 كلمة مثلا

أكرر هذا الكود 100 مرة ؟

بارك الله فيك


الاستبدال من ملف نصي - Aly El-Haddad - 01-03-13

تريد أستبدال أيّة كلمة بأيّة كلمة؟
أو أي سطر بأي سطر؟


الاستبدال من ملف نصي - خادم الدين - 01-03-13

على خيارين

الأول

أن يستبدال بالترتيب

السطر الاول بالثاني
والثالث بالرابع
والخامس بالسادس
والخيار الثاني

ان يستبدال بالترتيب من ملفين

يستبدل السطر الاول من ملف 1 بالسطر الاول من ملف 2
بحيث يكون ملف للأصل وملف للاستبدال
ويغنينا عن تكرار الاكواد
بحيث يكون واحد معناه انه يستبدل السطر في ملف 1 بالسطر الذي يقابله في ملف 2


الاستبدال من ملف نصي - خادم الدين - 01-03-13

او الافضل لو امكن كالتالي

سطر الأصل وسطر الاستبدال

بحيث لا يتم تحديد السطر رقم كذا يتم استبداله بالسطر كذا

ولكن اذا وضعت تكست يحتوي على :

محمد
احمد
على
موسي
محمود
مهند
عمر
حسن

سيتعرف على سطر الاصل فإن وجده يستبدله بالسطر الذي يليه وهكذا في كل الاسطر

بحيث يكون :

سطر الاصل
سطر الاستبدال
سطر الاصل
سطر الاستبدال

هل يمكن؟


الاستبدال من ملف نصي - Aly El-Haddad - 01-03-13

خادم الدين كتب :على خيارين

الأول

أن يستبدال بالترتيب

السطر الاول بالثاني
والثالث بالرابع
والخامس بالسادس
والخيار الثاني

ان يستبدال بالترتيب من ملفين

يستبدل السطر الاول من ملف 1 بالسطر الاول من ملف 2
بحيث يكون ملف للأصل وملف للاستبدال
ويغنينا عن تكرار الاكواد
بحيث يكون واحد معناه انه يستبدل السطر في ملف 1 بالسطر الذي يقابله في ملف 2

كود :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        System.IO.File.WriteAllText("مسار الملف النصي", ReplaceWithMethodOne(System.IO.File.ReadAllText("مسار الملف النصي")))
    End Sub

    Public Function ReplaceWithMethodOne(ByVal txt As String) As String
        Dim lines As String() = txt.Split(vbCrLf)
        For I As Integer = 0 To lines.Length - 1 Step 2
            If (I + 1) = lines.Length Then Exit For
            lines(I) = lines(I + 1)
        Next
        lines = InsertLine(lines)
        Return String.Concat(lines)
    End Function

    Private Function InsertLine(ByVal strArr As String()) As String()
        If strArr.Length > 1 Then
            For I As Integer = 0 To strArr.Length - 2
                strArr(I) &= vbCrLf
            Next
            Return strArr
        Else
            Return strArr
        End If
    End Function



الاستبدال من ملف نصي - خادم الدين - 01-03-13

بارك الله فيك ،

انا اقصد شيء قريب من هذا
ان نتائج الاستبدال تكون في التكست بوكس

لا يكون الاستبدال داخل الملف النصي نفسه

واعتذر على عدم التوضيح جزاك الله خيرا


الاستبدال من ملف نصي - Aly El-Haddad - 01-03-13

خادم الدين كتب :بارك الله فيك ،

انا اقصد شيء قريب من هذا
ان نتائج الاستبدال تكون في التكست بوكس

لا يكون الاستبدال داخل الملف النصي نفسه

واعتذر على عدم التوضيح جزاك الله خيرا
ولا يهمك أخي،
كود :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        TextBox1.Text = ReplaceWithMethodOne(System.IO.File.ReadAllText("مسار الملف النصي"))
    End Sub