25-08-22, 10:41 AM
(25-08-22, 09:47 AM)سعود كتب : باذن الله ساعيد القراءة للاكواد مرات عدة حتى اتمكن من تطبيق الفكرة.استاذ اذا كان قصدك كما فهمت هو تقسيم عناصر الليست اي ال 100 عنصر المنشأة عند الفورم لود الى قسمين متساويين اي كل قسم 50 عنصر فقط غير معرف ال maxint في بداية كود البوتن من =40 الى عدد عناصر الليست الحقيقية ال 100 عنصر ليصبح الكود برمته على النحو
شوف الكود اللي كتبته (اقصد انا) كتبته قبل كتابة الموضوع وواجهت اشكالية هي نفس اشكالية المشروع الخاص بالتقسيم والدمج وهو ان الملفات الصغيرة الحجم لا تنفع معها بسبب المشكلة بالكود:
PHP كود :
Imports System.IO
Public Class Form1
Dim fpath As String = IO.Path.GetDirectoryName(Application.ExecutablePath) & "\textfiles\"
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
For i As Integer = 0 To 100
ListBox1.Items.Add(i.ToString("000"))
Next
If IO.Directory.Exists(fpath) = False Then
IO.Directory.CreateDirectory(fpath)
End If
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim maxint As Integer = 40
Dim i As Integer
Dim all As String = ""
For i = 0 To ListBox1.Items.Count - 1
ListBox1.SetSelected(i, True)
Dim fn As String = fpath & i.ToString("000") & ".txt"
all &= ListBox1.Text & vbNewLine
If i >= maxint Then
If i Mod maxint = 0 Then
IO.File.WriteAllText(fn, all)
all = ""
End If
End If
fn = Nothing
Next
End Sub
End Class
هذا الكود نتيجته يحفظ الى 80 فقط .
ماهي الجزئية الخطأ.
PHP كود :
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim maxint As Integer = (ListBox1.Items.Count - 1) / 2
Dim i As Integer
Dim all As String = ""
For i = 0 To ListBox1.Items.Count - 1
ListBox1.SetSelected(i, True)
Dim fn As String = fpath & i.ToString("000") & ".txt"
all &= ListBox1.Text & vbNewLine
If i >= maxint Then
If i Mod maxint = 0 Then
IO.File.WriteAllText(fn, all)
all = ""
End If
End If
fn = Nothing
Next
End Sub

