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

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم قواعد البيانات (http://vb4arb.com/vb/forumdisplay.php?fid=40)
+--- قسم : قسم أسئلة قواعد البيانات تحت بيئة الـ.NET (http://vb4arb.com/vb/forumdisplay.php?fid=41)
+--- الموضوع : جلب البيانات من ملف txt (/showthread.php?tid=19812)



جلب البيانات من ملف txt - djelloul - 27-03-17

السلام عليكم ورحمة الله تعالى وبركاته
الأساتذة الكرام 
رجاءا لو سمحتم
عندي ملف تكست به قائمة من البيانات أريد تحميلها على قريد فيو
قمت بكاتبة هذا الكود لكن البيانات طلعت كلها في عمود واجد وبقية الأعمدة طلعت فارغة 
الملف هو :
[attachment=13674]
الكود  الذي كتبته هو :

        Dim fichierALire As String = Application.StartupPath & "\" & "Forme.txt"

        Dim champs() As String

        Dim sr As New StreamReader(fichierALire)

        While Not sr.EndOfStream
            Dim ligne As String = sr.ReadLine()
            champs = ligne.Split(CChar(vbTab))
            dgv.Rows.Add(champs)

        End While

ألف شكر لكم مسبقا


RE: جلب البيانات من ملف txt - abdualla - 27-03-17

أخي

لاحظت أنك اعتمدت على vbTab ولكن الملف ليس مقسم على أساسه بل مقسم على أساس فهرس الحرف في السطر

حدد طول كل عمود، مثلا الأول 55حرفاً والثاني 50 وهكذا

هذه تجربة قد تكون الحل
PHP كود :
   Private Sub Button1_Click(sender As ObjectAs EventArgsHandles Button1.Click

        Dim dt 
As New DataTable
        dt
.Columns.Add("Column1")
        dt.Columns.Add("Column2")
        dt.Columns.Add("Column3")
        dt.Columns.Add("Column4")
        dt.Columns.Add("Column5")
        dt.Columns.Add("Column6")
        dt.Columns.Add("Column7")
        dt.Columns.Add("Column8")
        dt.Columns.Add("Column9")
        dt.Columns.Add("Column10")
        dt.Columns.Add("Column11")
        dt.Columns.Add("Column12")
        dt.Columns.Add("Column13")
        dt.Columns.Add("Column14")

        For Each txt As String In IO.File.ReadLines("medic.txt")
            Dim r As DataRow dt.NewRow
            r
.Item("Column1") = txt.Substring(055).Trim
            r
.Item("Column2") = txt.Substring(5550).Trim
            r
.Item("Column3") = txt.Substring(10530).Trim
            r
.Item("Column4") = txt.Substring(13520).Trim
            r
.Item("Column5") = txt.Substring(15521).Trim
            r
.Item("Column6") = txt.Substring(1769).Trim
            r
.Item("Column7") = txt.Substring(1858).Trim
            r
.Item("Column8") = txt.Substring(19319).Trim
            r
.Item("Column9") = txt.Substring(2153).Trim
            r
.Item("Column10") = txt.Substring(2184).Trim
            r
.Item("Column11") = txt.Substring(22320).Trim
            r
.Item("Column12") = txt.Substring(24321).Trim
            r
.Item("Column13") = txt.Substring(2642).Trim
            r
.Item("Column14") = txt.Substring(266).Trim
            dt
.Rows.Add(r)
        Next

        Me
.DataGridView1.DataSource dt

    End Sub 


ولكن عليك مراجعة كل عمود حيث له رقمان (باستثناء الأخير لأنه يأخذ المتبقي كله)
الرقم الأول بداية العمود
الرقم الثاني طول العمود من الأحرف (حتى لو كان مسافات فارغة)


RE: جلب البيانات من ملف txt - سعود - 27-03-17

لو تجيب صورة لمثال تود تقليدها ...ممكن اقدر اساعدك.
عندي فكرة اخرى بصياغة الملف النصي واستدعاءها لشبكة البيانات.


RE: جلب البيانات من ملف txt - djelloul - 27-03-17

ألف شكر والله ما أدري كيف أشكرك


RE: جلب البيانات من ملف txt - abdualla - 27-03-17

الحمد لله

الأول طلع يبدأ من صفر وليس 1 وطوله 55 
ولكن لازمن تتأكد من كل الأعمدة

وهذا مشروع للي يحب يجرب في المرفقات


RE: جلب البيانات من ملف txt - djelloul - 28-03-17

ألف ألف شكر هذا بالظبط ما كنت أريده جازاك الله خيرا وجعله في ميزان حسناتكم أساتذة المنتدى

فقط شيء آخر لو سمحتم
لو حبيت أعمل تحديث في قاعدة البيانات لهذه القوائم أي إذا كان السطر موجوديقوم بعملية التحديث وإن لم يكن موجود يقوم بعملية الإنسرت
وحتى لا أثقل عليكم عملية التحديث والإنسرت أعرف كيف أقوم بها لكن كيف أتحقق من وجود السطر من عدمه فهذا ما يؤرقني
ألف شكر لكم مرة أخرى


RE: جلب البيانات من ملف txt - abdualla - 28-03-17

أخي

أعطيني معلومات بداية وطول كل عمود بالنص الخاص بملف txt
ممكن تعمل تصحيح للكود السابق وتضعه هنا

هل تقصد التحديث بيانات ملف txt
إذا كان كذلك إن شاء الله أقوم بعمل لك كود التحديث


RE: جلب البيانات من ملف txt - djelloul - 28-03-17

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