تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] هل يوجد كود معرفة عدد ملفات التي بـ تنسيقات الصور
#1
هل يوجد كود معرفة عدد ملفات التي بـ تنسيقات الصور

اريد كود واحد يقوم بمعرفة عدد الصور بكافة تنسيقاتها ...
لاني استخدم طريقة يدوية وهي:
كود :
Dim gifcounter As Object
    Dim jpgcounter As Object
    Dim pngcounter As Object
    Dim jpegcounter As Object
    Dim allcount As Integer

        gifcounter = Directory.GetFiles(fbd.SelectedPath, "*.gif".ToLower).Count
        jpgcounter = Directory.GetFiles(fbd.SelectedPath, "*.jpg".ToLower).Count
        pngcounter = Directory.GetFiles(fbd.SelectedPath, "*.png".ToLower).Count
        jpegcounter = Directory.GetFiles(fbd.SelectedPath, "*.jpeg".ToLower).Count
        allcount = gifcounter + jpgcounter + pngcounter + jpegcounter

فهل توجد طريقة لمعرفة عدد الملفات التي تعتبر صورة بغض النظر عن الامتداد؟؟
وفقكم الله.
كل مااعرفه في البرمجة تجدونه هنا
الرد }}}}
تم الشكر بواسطة:
#2
كود :
Dim count As Integer = 0
        Dim extensions As String() = {".jpg", ".jpeg", ".png", ".gif"}
        Dim paths As String() = IO.Directory.GetFiles(fbd.SelectedPath)
        Array.ForEach(Of String)(paths, Sub(path As String) Array.ForEach(Of String)(extensions, Sub(ext As String) If path.ToLower().EndsWith(ext) Then count += 1))
        MsgBox(count)
الرد }}}}
تم الشكر بواسطة: سعود , kslawy
#3
علي السريع
لا تقوم باكثر من عملية بحث دي يتقل معك الكود
قم بعمليه بحث عن جميع الملفات *.* ثم اعمل تكرار بعد ذلك يلف علي المصفوفة واذا وجد الملف ........

كود :
Dim lst_Ex() As String = {".gpg", ".png", ".gif"}
        Dim lst() As String = IO.Directory.GetFiles("", "*.*", 0)
        Dim allcount As Integer
        For Each fil As String In lst
            If (Array.IndexOf(lst_Ex, (New IO.FileInfo(fil).Exists))) >= 0 Then allcount += 1
        Next

لم اجرب فقط كتبت الفكرة
الرد }}}}
تم الشكر بواسطة: سعود , Aly El-Haddad , kslawy
#4
بارك الله فيك
الكود هذا مايجي بالتخمينSmileSmile
تسلم ايدك
كل مااعرفه في البرمجة تجدونه هنا
الرد }}}}
تم الشكر بواسطة: Aly El-Haddad
#5
اسف اخي Aly El-Haddad ما رائيت ردك
الرد }}}}
تم الشكر بواسطة: Aly El-Haddad , kslawy
#6
هههههه
مش هعديها الكود ده لازم يتشرح
كود :
Array.ForEach(Of String)(paths, Sub(path As String) Array.ForEach(Of String)(extensions, Sub(ext As String) If path.ToLower().EndsWith(ext) Then count += 1))
الرد }}}}
تم الشكر بواسطة: Sajad
#7
السلام عليكم ورحمة الله وبركاته

وزيادة الخير خيرين بالـ Linq :

كود :
Dim imagesFolder As String = My.Computer.FileSystem.SpecialDirectories.MyPictures
        Dim ImagesExtension As String() = New String() {".gif", ".jpg", ".png", ".jpeg"}

        Dim ImgsCount = (From m In New IO.DirectoryInfo(imagesFolder).GetFiles _
                         Where ImagesExtension.Contains(m.Extension) Select m).Count

        MessageBox.Show(ImgsCount)

****
***
**
*
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد }}}}
تم الشكر بواسطة: Sajad , Aly El-Haddad , سعود
#8
ههههههههههه، أنت تأمر Big Grin

Array.ForEach تقوم بتنفيذ أمر معين على جميع عناصر مصفوفة ما
Array.ForEach(Of String) لأن المصفوفة من نوع String
يأخذ الـParameter الأول المصفوفة المراد تنفيذ الأمر عليها
يأخذ الـParameter الثاني الأمر الذي سيتم تنفيذه من نوع Action بصيغة Lambda expression أو بالصيغة الموضحة على هذا الرابط

تكتب الأومر بالصيغة Lambda expression بالطريقة الموضحة في المشاركة أعلاة حيث str هي قيمة عنصر المصفوفة الذي يتم تطبيق الأمر عليه و من ثم يُكتب الأمر (في سطر واحد)

مثال توضيحي مثلاً عندنا مصفوفة نصية:
كود :
Dim strArr As String() = {"Item0", "Item1", "Item2"}
استخدام هذا الكود:
كود :
Array.ForEach(Of String)(strArr, Sub(str As String) MsgBox(str.ToUpper()))
هو لا يختلف عن هذا:
كود :
For Each str As String In strArr
            MsgBox(str.ToUpper())
        Next
إلى أن الأول في سطر واحد Smile
الرد }}}}
تم الشكر بواسطة: kslawy , سعود
#9
و بأعتذر عن التأخير في الرد بسبب إنقطاع الكهرباء Blush
الرد }}}}
تم الشكر بواسطة: kslawy , سعود


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  احتاج كود لطباعة الصور المخزنة في الداتا بيز Access sajakh 0 28 14-10-17, 10:33 PM
آخر رد: sajakh
  سؤال برممجي في الصور..؟ طـلال 5 120 02-10-17, 05:09 AM
آخر رد: khodor1985
Photo [VB.NET] معرفة من لم يدفع في نظام الفواتير الشهرية ( مهم جدا) Rabeea Qbaha 12 373 24-09-17, 04:36 PM
آخر رد: Rabeea Qbaha
  [VB.NET] هل يوجد اكواد صوت مثل Beep للتنبيه hglogtd 7 155 20-09-17, 02:36 AM
آخر رد: hglogtd
  تعريف ملفات الرسورس بالكلاس bidaya 2 75 19-09-17, 03:30 PM
آخر رد: bidaya
  كيفية نسخ ملفات في مجلد الـ System32 أو أي مجلد خاص بالوندوز بواسطة ملف الـ Setup نبيل فتحى 5 132 09-09-17, 01:51 AM
آخر رد: نبيل فتحى
  مساعده فى حماية او تشفير ملفات البرنامج نبيل فتحى 2 131 06-09-17, 08:16 AM
آخر رد: نبيل فتحى
Music [كود] هل لدى احد فكره عن كيفيه ارسال ملفات صوتيه عبر الشبكة badrkamel 1 102 23-08-17, 02:23 AM
آخر رد: zinom
  كيفية معرفة رقم تم حذفه وسط ارقام متسلسلة تناسيم 11 308 21-08-17, 11:38 PM
آخر رد: محمود بكرى
  هل يوجد كتاب متخصص في التعامل مع الصور في فيجوال بيسك 2013 rafaag777 1 126 20-08-17, 10:55 PM
آخر رد: العواد الصغير

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


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