تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] قراءة بيانات محددة من ملف text
#1
السلام عليكم
ارجو المساعدة
ارغب في ان استخرج بيانات محددة من ملف نصي ربما يحوي اكثر من 10000 سطر هذه الاسطر تكون مجموعة مؤلفة من خمسين سطر وفي اخر سطر يوجد كلمة end تدل على نهاية المجموعة وبدء مجموعة اخر ولكان بيانات مختلفة ولكن تكون مشابهة بنفس الاسم
 
 
d/AD306L0114E/CBK1V72331103/106                 18-02-06  12:56:51
7621  NetM         NTM01              2893/06189
 
TRAFFIC MEASUREMENT : TRUNK GROUP                        18-01-26  00:15
 
DATA QUALITY : SECURE                             
 
    TGNO           :    BARMBK                                           
    OPMODE/TGRPTYP :    BW                                             
    AVAILABILITY   :                                                 
--------------------+---------+-------+-------+-------+-------+-------
CC:I                         1                                         
TC:I (DERL)                 15                                         
CCS WITH ANSWER:I            1                                         
TC ANSWER:I (DERL)          24                                         
CC:O                         0                                         
                                       
CCU CCS7 CCNC OLOAD          0                                                                              
END TEXT 7621
ارغب ان تظهر البيانات ضمن داتا غرد فيو حيث مثلا cc عنوان عمود والرقم الي بجانبه هو القيمة وهكذا tc عنوان العمود 15 البيانات حتى نصل الى كلمة end text وبعدها تبدء مجموعة ثانية هي بنفس اسماء الاعمدة cc  و  tc ... ولكن تكون بيانات غير وبهذا نصل الى نتيجة مثلا ان عمود cc يكون تحته 1000 بيان اي الف سطر  

name     data/taime     cc     tc    ccs      tc     ccs          connected
المجموعة الاولى   15      10      12    0      12    18/8/2018    12



وبهذا يكون الاسطر cc  tc..  هي عنواين لاعمدة

التاريخ يكون ضمن الاسطر الاولى TRUNK GROUP  وفي المجموعة الثانية يكون بنفس العنوان التاريخ
ارجو الاجابة على ان تظهر ضمن داتا غرد فيو
وشكرا
الرد
تم الشكر بواسطة:
#2
هل يوجد حل وشكرا
الرد
تم الشكر بواسطة:
#3
انت تحاول ان تستخدم ملف تكست كقاعدة بيانات ذات جدول
اظن لايمكن عمل هذا.
الرد
تم الشكر بواسطة:
#4
هذا الكود قد يفى بالغرض 

كود :
       Dim Lines As String() = IO.File.ReadAllLines("sample.txt")
       Dim dt As New DataTable

       dt.Columns.Add(New DataColumn("txt_name", GetType(String)))
       dt.Columns.Add(New DataColumn("txt_date", GetType(String)))
       dt.Columns.Add(New DataColumn("CC", GetType(String)))
       dt.Columns.Add(New DataColumn("TC", GetType(String)))
       dt.Columns.Add(New DataColumn("CCS", GetType(String)))
       dt.Columns.Add(New DataColumn("TC_ANSWER", GetType(String)))
       dt.Columns.Add(New DataColumn("CCU", GetType(String)))

       Dim txt_name, txt_date, CC, TC, CCS, TC_ANSWER, CCU As String
       txt_name = "" : txt_date = "" : CC = "" : TC = "" : CCS = "" : TC_ANSWER = "" : CCU = ""
       For i As Integer = 0 To Lines.Length - 1
           Dim line As String = Lines(i).ToString.Trim
           If line.StartsWith("TRAFFIC MEASUREMENT") Then
               txt_date = line.Split(":")(1).Replace("TRUNK GROUP", "").Trim
           ElseIf line.StartsWith("CC:") Then
               CC = line.Split(":")(1).Replace("I", "").Trim
               CC = line.Split(":")(1).Replace("O", "").Trim
           ElseIf line.StartsWith("CCS") Then
               CCS = line.Split(":")(1).Replace("I", "").Trim
           ElseIf line.StartsWith("TC ANSWER") Then
               TC_ANSWER = line.Split(":")(1).Replace("I (DERL)", "").Trim
           ElseIf line.StartsWith("TC:") Then
               TC = line.Split(":")(1).Replace("I (DERL)", "").Trim
           ElseIf line.StartsWith("CCU") Then
               CCU = Strings.Right(line, 3).Trim
           ElseIf line.StartsWith("END TEXT") Then
               dt.Rows.Add(New Object() {txt_name, txt_date, CC, TC, CCS, TC_ANSWER, CCU})
               txt_name = "" : txt_date = "" : CC = "" : TC = "" : CCS = "" : TC_ANSWER = "" : CCU = ""
           End If
       Next
       DataGridView1.DataSource = dt

و لكن لم أفهم ما هى المجموعة الأولى و الثانية 
و لم أجد سطر به الاسم name 
كذلك هناك سطرين بدايتهما CC



اذا كان الكود لا يعطى المطلوب 
يرجى ارفاق الملف او جزء منه مع توضيح المطلوب
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] ما الفرق بين قاعدة بيانات الاكسس و sql server و my sql في البرمجه منه 3 209 02-06-20, 07:23 AM
آخر رد: منه
  مشكله في الوصول الى قاعدة بيانات 2007 عند تغيرها 2016 alshandodi 7 191 29-05-20, 11:34 AM
آخر رد: معاند الحظ
  فورمة عرض بيانات atefkhalf2004 6 173 28-05-20, 08:59 PM
آخر رد: atefkhalf2004
  تنفيذ استعلام حذف البيانات في جدول قاعدة بيانات سيكوال سيرفر باستخدام الكود في فجوال momani33 4 150 28-05-20, 12:46 AM
آخر رد: اسامه الهرماوي
  مشكلة في الترقيم التلقائي في قاعدة بيانات سيكوال سيرفر momani33 3 146 27-05-20, 11:49 PM
آخر رد: momani33
Brick [VB.NET] عايز طريقة اضافه رقم لحقل معين لمجموعة بيانات x4ahmad 2 190 23-05-20, 01:09 AM
آخر رد: x4ahmad
  طلب و أتمنى لو موجود: قاعدة بيانات أدوية DR.YASER 2 184 16-05-20, 05:47 AM
آخر رد: عبد العزيز البسكري
  حفظ كل بيانات الداتاجريد العيدروس 12 366 16-05-20, 04:37 AM
آخر رد: العيدروس
  [VB.NET] طلب كود تصدير بيانات داتا جريد فيو إلى وورد waelalmsry75 11 1,623 15-05-20, 11:55 PM
آخر رد: aljzazy
  خطأ عند إعادة تسمية العمود في قاعدة بيانات أكسس Hazem1 1 136 14-05-20, 03:56 AM
آخر رد: ابراهيم ايبو

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


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