تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] كيفية حفظ عناصر DataGridView الى ملف نصى text file
#2
طلبك ليس صعبا لكنه يحتاج الي وقت

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

عموما الفكرة هنا عبارة عن استخدام DataSource الخاصة ب الداتاجريد فيو و تحويلها الي مصفوفة عناصر  أو الي DataTable مثلا
ثم تستخدم Serialization و De-Serialization لحفظ العناصر في ملف او لإسترجاع العناصر من الملف
أما نوع الملف فقد يكون xmal او تكست أو اي ملف

و المقصود بعملية  Serialization و De-Serializatio
انك تستخدم FileStream مع BinaryFormatter لحفظ او استرجاع عناصر  المصفوفة من الملف

و الكود الخاص بهذا سيكون شيئا من هذا القبيل و هو الحل لمشكلتك
وعليك فقط ان تستخدم كلمة IP بدلا من كلمة Object
والكود مكتوب ب اسلوب ان الحفظ يتم في ملف تحدد انت الاسم الخاص به و تحدد امتداده أيضا

PHP كود :
   Public Sub Serialize(fileName As String, list As IEnumerable(Of Object))

 
       Dim fs As System.IO.FileStream = New System.IO.FileStream(fileNameSystem.IO.FileMode.OpenOrCreate)
 
       Dim formatter As System.Runtime.Serialization.Formatters.Binary.BinaryFormatter = New System.Runtime.Serialization.Formatters.Binary.BinaryFormatter()
 
       Try
            formatter
.Serialize(fs, list)
 
           fs.Close()
 
       Catch ex As System.Runtime.Serialization.SerializationException
            MessageBox
.Show(ex.Message ": " ex.StackTrace"Error"MessageBoxButtons.OKMessageBoxIcon.Error)
 
       End Try

 
   End Sub

    Public 
Function Deserialize(fileName As String) As IEnumerable(Of Object)

 
       Dim fs As System.IO.FileStream = New System.IO.FileStream(fileNameSystem.IO.FileMode.Open)
 
       Dim list As New List(Of Object)()

 
       Try
            Dim Formatter 
As New System.Runtime.Serialization.Formatters.Binary.BinaryFormatter()
 
           list Formatter.Deserialize(fs)
 
           fs.Close()
 
           Return list
 
       Catch ex As System.Runtime.Serialization.SerializationException
            MessageBox
.Show(ex.StackTraceex.MessageMessageBoxButtons.OKMessageBoxIcon.Error)
 
           Return list
 
       End Try

 
   End Function 


نصيحتي لك أن تبني كلاس يكون اساسه العناصر  التي سوف يتم حفظها خاصة اذا كان لديك اكثر من عنصر غير IP سوف يتم حفظه في الملف

ثم تبني Collection لهذا الكلاس حتي تستطيع ان تتحكم بعناصر المصفوفة بشكل أفضل أثناء عملية ظهورها في الداتاجريد فيو او أثناء حفظها في الملف

حل أخر

وهذا الحل مناسب جدا خاصة ان كانت البيانات المراد تخزينها بيانات غير حساسة
انك تستخدم XmlTextReader , لقراءة البيانات وتستخدم XmlTextWriter لحفظ البيانات

حل أخر

انك تستخدم BinaryReader مع BinaryWriter


عموما الأمر محتاج مجهود منك لتخزين البيانات بشكل دقيق حسب اهمية و نوعية البيانات
الرد }}}
تم الشكر بواسطة: HASAN6.0 , khodor1985 , khodor1985


الردود في هذا الموضوع
RE: كيفية حفظ عناصر DataGridView الى ملف نصى text file - بواسطة silverlight - 13-01-16, 02:17 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيفية منع ظهور الأخطاء من إعدادات البيسيك mmaalmesry 2 859 29-08-25, 10:30 AM
آخر رد: mmaalmesry
  كيفية جلب أسماء الأعمدة بجدول من جداول sql heem1986 2 755 17-08-25, 09:15 PM
آخر رد: heem1986
  كيفية حفظ إعدادات البرنامج بحيث لا تتغير أحمد إبراهيم سعد 4 3,015 06-08-25, 06:34 PM
آخر رد: Taha Okla
  مساعدة في كيفية ترحيل البيانات من داتا قريدفيو إلى داتا قريدفيو في فيجوال بيسك ahmedfa71 13 2,295 09-07-25, 11:24 PM
آخر رد: أبو خالد الشكري
  [VB.NET] محتاج اربط DataGridView بزر بحث bakrycold 1 558 28-02-25, 12:11 AM
آخر رد: bakrycold
  كيفية احتساب الفرق بين تاريخين بناء على عدد معين مصمم هاوي 2 560 15-01-25, 02:02 PM
آخر رد: مصمم هاوي
  كيفية التعامل مع inputbox في فيجوال ستوديو أسامة حسين 4 3,526 14-01-25, 02:04 AM
آخر رد: أبو خالد الشكري
  [VB.NET] استعراض بيانات في Datagridview واضافة جميع البيانات لجدول محدد sql skode 0 491 12-01-25, 12:50 AM
آخر رد: skode
Information [VB.NET] تنسيق أعمدة DataGridView أبو خالد الشكري 3 587 21-12-24, 02:40 PM
آخر رد: aljzazy
  كيفية معرفة الجهاز رئيسي ام فرعي المتألق9 1 407 13-11-24, 06:41 PM
آخر رد: justforit

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


يقوم بقرائة الموضوع: