تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] تصدير بيانات من datagridviwe الي ملف نوع CSV
#1
السلام عليكم
كل عام وانتم بخير بمناسبة حلول شهر رمضان المبارك اعاده الله علينا وعوعليكم باليمن والبركات 
 اخوتي الاعضاء ارجوو مساعدتي في كود لتصدير بيانات من  DataGridviwe الى نوع CSV 
والسلام عليكم ورحمه الله وبركاته
الرد
تم الشكر بواسطة:
#2
عزيزي محمد بوقزاحة هذا الكود
Dim csv As String = String.Empty
Dim save_file As New SaveFileDialog
save_file.Filter = "Csv Files (*.csv)|*.csv"
save_file.FileName = "newsave"
' txtpathfile.Text = fName
If save_file.ShowDialog = Windows.Forms.DialogResult.OK Then


Dim headers = (From header As DataGridViewColumn In GridView1.Columns.Cast(Of DataGridViewColumn)() _
Select header.HeaderText).ToArray
Dim rows = From row As DataGridViewRow In GridView1.Rows.Cast(Of DataGridViewRow)() _
Where Not row.IsNewRow _
Select Array.ConvertAll(row.Cells.Cast(Of DataGridViewCell).ToArray, Function© If(c.Value IsNot Nothing, c.Value.ToString.Replace(" 12:00:00 ص", ""), ""))
' csv += row.Value.ToString().Replace(" 12:00:00 ص", "") & "|"c
Using sw As New IO.StreamWriter(save_file.FileName, Nothing, System.Text.Encoding.Unicode)

sw.WriteLine(String.Join("|", headers)) ', System.Text.Encoding.Unicode)
For Each r In rows
sw.WriteLine(String.Join("|", r)) ', System.Text.Encoding.Unicode)

Next
'save_file.FileName.Replace(".txt", ".csv")
End Using
End If
الرد
تم الشكر بواسطة: محمد بوقزاحة
#3
(04-05-22, 08:14 PM)emadtm كتب : عزيزي محمد بوقزاحة  هذا الكود
Dim csv As String = String.Empty
       Dim save_file As New SaveFileDialog
       save_file.Filter = "Csv Files (*.csv)|*.csv"
       save_file.FileName = "newsave"
       ' txtpathfile.Text = fName
       If save_file.ShowDialog = Windows.Forms.DialogResult.OK Then


           Dim headers = (From header As DataGridViewColumn In GridView1.Columns.Cast(Of DataGridViewColumn)() _
                  Select header.HeaderText).ToArray
           Dim rows = From row As DataGridViewRow In GridView1.Rows.Cast(Of DataGridViewRow)() _
                      Where Not row.IsNewRow _
                      Select Array.ConvertAll(row.Cells.Cast(Of DataGridViewCell).ToArray, Function© If(c.Value IsNot Nothing, c.Value.ToString.Replace(" 12:00:00 ص", ""), ""))
           ' csv += row.Value.ToString().Replace(" 12:00:00 ص", "") & "|"c
           Using sw As New IO.StreamWriter(save_file.FileName, Nothing, System.Text.Encoding.Unicode)

               sw.WriteLine(String.Join("|", headers)) ', System.Text.Encoding.Unicode)
               For Each r In rows
                   sw.WriteLine(String.Join("|", r)) ', System.Text.Encoding.Unicode)

               Next
               'save_file.FileName.Replace(".txt", ".csv")
           End Using
       End If

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

(09-05-22, 12:22 AM)محمد بوقزاحة كتب :
(04-05-22, 08:14 PM)emadtm كتب : عزيزي محمد بوقزاحة  هذا الكود
Dim csv As String = String.Empty
       Dim save_file As New SaveFileDialog
       save_file.Filter = "Csv Files (*.csv)|*.csv"
       save_file.FileName = "newsave"
       ' txtpathfile.Text = fName
       If save_file.ShowDialog = Windows.Forms.DialogResult.OK Then


           Dim headers = (From header As DataGridViewColumn In GridView1.Columns.Cast(Of DataGridViewColumn)() _
                  Select header.HeaderText).ToArray
           Dim rows = From row As DataGridViewRow In GridView1.Rows.Cast(Of DataGridViewRow)() _
                      Where Not row.IsNewRow _
                      Select Array.ConvertAll(row.Cells.Cast(Of DataGridViewCell).ToArray, Function© If(c.Value IsNot Nothing, c.Value.ToString.Replace(" 12:00:00 ص", ""), ""))
           ' csv += row.Value.ToString().Replace(" 12:00:00 ص", "") & "|"c
           Using sw As New IO.StreamWriter(save_file.FileName, Nothing, System.Text.Encoding.Unicode)

               sw.WriteLine(String.Join("|", headers)) ', System.Text.Encoding.Unicode)
               For Each r In rows
                   sw.WriteLine(String.Join("|", r)) ', System.Text.Encoding.Unicode)

               Next
               'save_file.FileName.Replace(".txt", ".csv")
           End Using
       End If

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

(09-05-22, 12:22 AM)محمد بوقزاحة كتب :
(04-05-22, 08:14 PM)emadtm كتب : عزيزي محمد بوقزاحة  هذا الكود
Dim csv As String = String.Empty
       Dim save_file As New SaveFileDialog
       save_file.Filter = "Csv Files (*.csv)|*.csv"
       save_file.FileName = "newsave"
       ' txtpathfile.Text = fName
       If save_file.ShowDialog = Windows.Forms.DialogResult.OK Then


           Dim headers = (From header As DataGridViewColumn In GridView1.Columns.Cast(Of DataGridViewColumn)() _
                  Select header.HeaderText).ToArray
           Dim rows = From row As DataGridViewRow In GridView1.Rows.Cast(Of DataGridViewRow)() _
                      Where Not row.IsNewRow _
                      Select Array.ConvertAll(row.Cells.Cast(Of DataGridViewCell).ToArray, Function© If(c.Value IsNot Nothing, c.Value.ToString.Replace(" 12:00:00 ص", ""), ""))
           ' csv += row.Value.ToString().Replace(" 12:00:00 ص", "") & "|"c
           Using sw As New IO.StreamWriter(save_file.FileName, Nothing, System.Text.Encoding.Unicode)

               sw.WriteLine(String.Join("|", headers)) ', System.Text.Encoding.Unicode)
               For Each r In rows
                   sw.WriteLine(String.Join("|", r)) ', System.Text.Encoding.Unicode)

               Next
               'save_file.FileName.Replace(".txt", ".csv")
           End Using
       End If

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


الملفات المرفقة صورة/صور
           
الرد
تم الشكر بواسطة:
#4
السلام عليكم ورحمة الله وبركاته
اخي الكريم محمد
بالنسبة للملف ذو اللاحقة CSV يتم فيه كتابة عناوين الحقول مفصولة بـ (, )
ثم السجلات اسفله ايضا مفصولة بالفاصلة
واعتقد من خلال التجربة لايقبل الا اشارة الفاصلة 
اما ان اردت استخدام اشارات اخرى للفصل بين قيم الحقول فالأمر مختلف وهنا يجب ان تتعامل مع ملف نصي عادي تنشئ شكل الداتا كما تريد وهو اكثر تعقيدا من الملف CSV
إليك هذا المثال وهو يجلب البيانات من قاعدة اكسس ويضعها في الداتاغرايد ثم نقوم بالتصدير الى ملف CSV داخل مجلد DDD موجود في مجلد الـ Debug
اكتب اسم الملف فقط بدون لاحقة ثم اضغط البوتون تصدير


الملفات المرفقة
.zip   CSV_File_Database.zip (الحجم : 106.76 ك ب / التحميلات : 6)
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد
تم الشكر بواسطة: محمد بوقزاحة


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  أرجو المساعدة العاجلة:الاتصال بقاعدة بيانات SQLLITE dr.programming 8 132 منذ 11 ساعة مضت
آخر رد: ابراهيم ايبو
  [VB.NET] انشاء قاعدة بيانات access فارغة وقت التشغيل mmaalmesry 2 140 14-05-22, 11:20 PM
آخر رد: mmaalmesry
  كيف يمكن اضافة 100 سجل بسيريال مسلسل الى قاعدة بيانات dr.programming 3 224 11-05-22, 03:08 PM
آخر رد: dr.programming
Big Grin [VB.NET] ادخال بيانات الى موقع الكترونى بـ VB.NET thecaser 0 212 30-04-22, 01:43 AM
آخر رد: thecaser
  [VB.NET] معرف الخطأ في التصدير بيانات الى ملف نوع CSV محمد بوقزاحة 0 272 01-04-22, 03:16 PM
آخر رد: محمد بوقزاحة
  [VB.NET] كود تصدير قاعدة البيانات إلى ملف Excel محمد العامر 8 2,774 23-03-22, 07:20 PM
آخر رد: نسيم الشباطي
Sad هل استطيع حذف بيانات العمود فى الداتا جريد لعدة صفوف حسين ادريس 2 433 19-03-22, 08:21 AM
آخر رد: حسين ادريس
  تصدير بيانات datagridview الى ايكسيل باستخدام فيجوال ستوديو 2005 bassant 2 499 13-03-22, 06:34 PM
آخر رد: Taha Okla
  هل يمكن اضافة بيانات اخري عند الطباعه مع داتا جريد فيو مثل الاسم التاريخ رقم الفاتور ahmedhhh2 3 503 13-03-22, 06:03 PM
آخر رد: ahmedhhh2
  [VB.NET] استرجاع صورة من قاعدة بيانات اكسس 2007 alrashidy 0 336 11-03-22, 12:31 AM
آخر رد: alrashidy

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


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