تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
نقل البيانات من ملف نصي لداتا جريد فيو
#1
عندي ملف الرسائل بسحبة من الموبايل  بستخدم داتا جريد فيو ب 5 اعمدة

بنقلة لداتا جريد فيو بس المشكلة بيجيلي 3 صفوف زيادة عن الموجودة بالملف مش عارف بيظهر ازاي يعني الملف مكون من 5 لاين
استخدمت كود بيظهر 8 لاين مش عارف ازاي الكود


كود :
 For Each line As String In System.IO.File.ReadAllLines("D:\SMS\SMS١٥٠٢٢٠١٨_٠٤_٥٣_٤١.txt")
           DataGridView1.Rows.Add(line.Split(","))
       Next
وملف الرسائل الي بنقل منة بالمرفقات

في طلب اخر اريد وضع عمود اخر 6 يتم وضع فية جزء من لاين3 " استلام مبلغ 5.0 جنيه من رقم    0103039075

يتم وضع الرقم التليفون فية فقط (0103039075

 وفي لاين 4 م تحويل 5.0 جنيه لرقم 01022356425

يتم وضع الرقم بالعمود 6


الملفات المرفقة
.txt   SMS١٥٠٢٢٠١٨_٠٤_٥٣_٤١.txt (الحجم : 1.11 ك ب / التحميلات : 28)
الرد
تم الشكر بواسطة:
#2
PHP كود :
Dim txt As String IO.File.ReadAllText("D:\SMS\SMS١٥٠٢٢٠١٨_٠٤_٥٣_٤١.txt")
Dim arr() As String = (From m In Regex.Matches(txt"\d+,.+"Select CStr(m.Value)).ToArray
For Each a In arr
    Dim r 
a.Split(",")
    
Me.DataGridView1.Rows.Add(r)
Next 
الرد
تم الشكر بواسطة:
#3
(16-02-18, 05:11 PM)طالب برمجة كتب :
PHP كود :
Dim txt As String IO.File.ReadAllText("D:\SMS\SMS١٥٠٢٢٠١٨_٠٤_٥٣_٤١.txt")
Dim arr() As String = (From m In Regex.Matches(txt"\d+,.+"Select CStr(m.Value)).ToArray
For Each a In arr
    Dim r 
a.Split(",")
 
   Me.DataGridView1.Rows.Add(r)
Next 

نعم هذا هو المطلوب وفقك اللّة

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

حيث يضع كود العملية بالعمود السادس والرقم بالعمود السابع بنفس صف العملية الخاص بنفس اللا ين  ملحوظة لايوجد اقواس في الرسالة الحقيقية ت وضعها للاشارة للمطلوب فقط
كود :
تم استلام مبلغ 5.0 جنيه من رقم( 0103039075)؛ تاريخ العملية ‎‎08-12-17 15:34 رقم العملية( 000059949500 ). لو سحبت الفلوس هتاخد 5.0 دقايق و رسايل هدية ببلاش. اطلب #102*9* (لعملاء الكارت والكنترول فقط)
الرد
تم الشكر بواسطة:
#4
PHP كود :
Dim txt As String "تم استلام مبلغ 5.0 جنيه من رقم( 0103039075)؛ تاريخ العملية ‎‎08-12-17 15:34 رقم العملية( 000059949500 ). لو سحبت الفلوس هتاخد 5.0 دقايق و رسايل هدية ببلاش. اطلب #102*9* (لعملاء الكارت والكنترول فقط)"

Dim mmm As MatchCollection Regex.Matches(txt"\d{10,12}")

Dim tel As String ""
Dim code As String ""

For Each m In mmm
    
If m.Value.ToString.Count 10 Then tel m.Value.ToString
    
If m.Value.ToString.Count 12 Then code m.Value.ToString
Next

MsgBox
("Tel: " tel)
MsgBox("Code: " code
الرد
تم الشكر بواسطة: عبد العزيز البسكري
#5
(16-02-18, 09:39 PM)طالب برمجة كتب :
PHP كود :
Dim txt As String "تم استلام مبلغ 5.0 جنيه من رقم( 0103039075)؛ تاريخ العملية ‎‎08-12-17 15:34 رقم العملية( 000059949500 ). لو سحبت الفلوس هتاخد 5.0 دقايق و رسايل هدية ببلاش. اطلب #102*9* (لعملاء الكارت والكنترول فقط)"

Dim mmm As MatchCollection Regex.Matches(txt"\d{10,12}")

Dim tel As String ""
Dim code As String ""

For Each m In mmm
    If m
.Value.ToString.Count 10 Then tel m.Value.ToString
    If m
.Value.ToString.Count 12 Then code m.Value.ToString
Next

MsgBox
("Tel: " tel)
MsgBox("Code: " code

بشكرك الف شكر علي تعبك ومجهودك معايا بس هتقل عليك بملاحظة


انا عايز تكملة لكود الداتا جريد فيو لان عندي  عشرات الرسائل عايز اسهل علي نفسي ويتم وضع الرقم تلقائي من كل رسالة الي اصف الخاص بالداتا جريد فيو بالعمود السابع
وكود العملية ضمن الصف بالعمود السادس واكون جزيل الشكر
طبعا في اكتر من لاين خاص بالعملاء المرسل الي رسائل منهم خاصة بمبالغ ورقم وكود عملية

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

كود :
Dim txt As String = IO.File.ReadAllText("D:\SMS\SMS١٥٠٢٢٠١٨_٠٤_٥٣_٤١.txt")
Dim arr() As String = (From m In Regex.Matches(txt, "\d+,.+") Select CStr(m.Value)).ToArray
For Each a In arr
   Dim r = a.Split(",")
   Me.DataGridView1.Rows.Add(r)
Next
الرد
تم الشكر بواسطة:
#6
إذا كنت أنت من يصنع ملف txt فضع المشروع لإعادة برمجته بشكل يسهل عملك أكثر
الرد
تم الشكر بواسطة:
#7
(16-02-18, 10:31 PM)طالب برمجة كتب : إذا كنت أنت من يصنع ملف txt فضع المشروع لإعادة برمجته بشكل يسهل عملك أكثر
انا لا ابرمج الملف انا استخدم برنامج داخل الموبايل ويخرج ملف بامتداد csv  من رسائل الموبايل الفعلية كلها
وانا استخدم كود لفتح مسار الموبايل بالكمبيوتر ونقل محتواة بالداتا جريد فيو بالكود الذي امدتني بية  والملف سبق رفعة في اول مشاركة خاصة بيا لتسهيل وهو المستخدم والمطلوب نقل محتواة لداتا جريد بنفس المطلوب السابق

الملف موجود باول مرفق
الرد
تم الشكر بواسطة:
#8
على أساس رقم التلفون من 10 أرقام والكود من 12 رقم
PHP كود :
Dim txt As String IO.File.ReadAllText("D:\SMS\SMS١٥٠٢٢٠١٨_٠٤_٥٣_٤١.txt")

Dim arr() As String = (From m In Regex.Matches(txt"\d+,.+"Select CStr(m.Value)).ToArray
For Each a In arr
    Dim r 
a.Split(",")
    
Dim mmm As MatchCollection Regex.Matches(r(4), "\d{10,12}")

    
Dim tel As String ""
    
Dim code As String ""
    
For Each m In mmm
        
If m.Value.ToString.Count 10 Then tel m.Value.ToString
        
If m.Value.ToString.Count 12 Then code m.Value.ToString
    Next

    Dim lst 
As New List(Of String)(r)

    
lst.Add(tel)
    
lst.Add(code)

    
Me.DataGridView1.Rows.Add(lst.ToArray)
Next 
الرد
تم الشكر بواسطة: محمد اسماعيل
#9
(16-02-18, 11:07 PM)طالب برمجة كتب : على أساس رقم التلفون من 10 أرقام والكود من 12 رقم
PHP كود :
Dim txt As String IO.File.ReadAllText("D:\SMS\SMS١٥٠٢٢٠١٨_٠٤_٥٣_٤١.txt")

Dim arr() As String = (From m In Regex.Matches(txt"\d+,.+"Select CStr(m.Value)).ToArray
For Each a In arr
    Dim r 
a.Split(",")
 
   Dim mmm As MatchCollection Regex.Matches(r(4), "\d{10,12}")

 
   Dim tel As String ""
 
   Dim code As String ""
 
   For Each m In mmm
        If m
.Value.ToString.Count 10 Then tel m.Value.ToString
        If m
.Value.ToString.Count 12 Then code m.Value.ToString
    Next

    Dim lst 
As New List(Of String)(r)

 
   lst.Add(tel)
 
   lst.Add(code)

 
   Me.DataGridView1.Rows.Add(lst.ToArray)
Next 

جزاك اللّة الف خير عني وعن غيري في الدنيا والاخرة

في شيء بسيط اخير الكود يعمل تمام بس في لاين اخر بيظهر رقم تليفونة وهو خارج اللاين المطلوب
وهو لا ين تم تحويل رقم لمبلغ والمفروض لاين تم استلام فقط الي يظهر

طلب اخر علي اي اساس اخترت لاين الخاص بالاستلام مش شايف اي كلمة او جزء معبر عن  الكلمة وطريقة اقتصاص الجزء
 التمس لي العذر ليس لدي خبرة بااوامر
PHP كود :
Regex 
الرد
تم الشكر بواسطة: طالب برمجة
#10
رقم الهاتف أحيانا يكون بكلمة (لرقم) وأحيانا (من رقم) مسألة اقتناص رقم الهاتف والكود ليست دقيقة دائما فقد تتغير الكلمات والمسافات والأقواس
PHP كود :
Dim txt As String IO.File.ReadAllText("D:\SMS\SMS١٥٠٢٢٠١٨_٠٤_٥٣_٤١.txt")

Dim arr() As String = (From m In Regex.Matches(txt"\d+,.+"Select CStr(m.Value)).ToArray
For Each a In arr
    Dim r 
a.Split(",")

    
Dim tel As String Regex.Match(r(4), "(?<=(من رقم|لرقم)\s?\(?\s?)\d{10,}").Value
    Dim code 
As String Regex.Match(r(4), "(?<=(رقم العملية)\s?\(?\s?)\d{10,}").Value

    Dim lst 
As New List(Of String)(r)
    lst.Add(tel)
    lst.Add(code)

    Me.DataGridView1.Rows.Add(lst.ToArray)
Next 
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مساعدة في داتا جريد فيو cordava 1 39 , 08:09 PM
آخر رد: Lathe1
  اخفاء صف في الداتا جريد بناء علي قيمه makky 1 57 , 09:37 AM
آخر رد: mmali127
  [VB.NET] ربط التقارير بقاعده البيانات احمد سليمان 0 57 14-10-20, 02:43 PM
آخر رد: احمد سليمان
  حفظ list box في قاعدة البيانات اعينوني,,,,,,, KIKO1992 0 62 13-10-20, 11:08 AM
آخر رد: KIKO1992
  [VB.NET] اضافة ازرار حسب عدد متغير في قاعدة البيانات Ad Heart 2 425 08-10-20, 05:07 AM
آخر رد: Ad Heart
  [ تمّ الحل ] : عدم القدرة على عمل أتاش لقاعدة البيانات عبد العزيز البسكري 21 682 07-10-20, 07:29 PM
آخر رد: عبد العزيز البسكري
  [VB.NET] عمل اتاش و تحديث قاعدة البيانات بعد التعديل على الحقول دون ضياع السجلات برمجيا larbihamri 4 208 06-10-20, 03:33 PM
آخر رد: larbihamri
  [VB.NET] مساعدة في إضافة row في جريد فيو Codack 1 155 23-09-20, 02:27 PM
آخر رد: اسامه الهرماوي
  [VB.NET] تعديل البيانات من خلال فورم آخر EbrNaj00 6 351 16-09-20, 12:42 AM
آخر رد: EbrNaj00
  المساعدة في التعديل على كود تعديل البيانات في قاعدة سيكوال سيرفر momani33 3 219 15-09-20, 08:10 PM
آخر رد: Anas Mahmoud

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم