كيفية البحث عن الملفات والمجلدات مع دلفي

click fraud protection

عند البحث عن الملفات ، غالبًا ما يكون من المفيد والضروري البحث عبر المجلدات الفرعية. هنا ، انظر كيفية الاستخدام دلفيقوة إنشاء مشروع بسيط ، لكنه قوي ، للعثور على جميع ملفات المطابقة.

مشروع بحث قناع الملف / المجلد

لا يتيح لك المشروع التالي البحث عن الملفات من خلال المجلدات الفرعية فحسب ، بل يتيح لك أيضًا تحديد سمات الملف بسهولة ، مثل الاسم والحجم وتاريخ التعديل وما إلى ذلك. حتى تتمكن من معرفة متى يمكنك استدعاء مربع حوار خصائص الملف من مستكشف Windows. على وجه الخصوص ، يوضح كيفية البحث بشكل متكرر من خلال المجلدات الفرعية وتجميع قائمة الملفات التي تتطابق مع قناع ملف معين. يتم تعريف تقنية العودية على أنها روتين يستدعي نفسه في منتصف الكود.

من أجل فهم الشفرة في المشروع ، يجب أن نتعرف على الطرق الثلاثة التالية المحددة في وحدة SysUtils: FindFirst و FindNext و FindClose.

FindFirst

FindFirst هو استدعاء التهيئة لبدء إجراء بحث مفصل عن الملف باستخدام مكالمات API Windows. يبحث البحث عن الملفات التي تطابق محدد المسار. يتضمن المسار عادةً أحرف البدل (* و؟). تحتوي معلمة Attr على مجموعات من سمات الملف للتحكم في البحث. ثوابت سمات الملف المعترف بها في Attr هي:

instagram viewer
faAnyFile (أي ملف) ، الدليل (أدلة) ، فقط (قراءة الملفات فقط) ، faHidden (الملفات المخفية) ، faArchive (ملفات الأرشيف) ، ملف faSysFile (ملفات النظام) و معرف faVolume (ملفات معرف وحدة التخزين).

إذا عثر FindFirst على ملف مطابق واحد أو أكثر ، فإنه يُرجع 0 (أو رمز خطأ للفشل ، عادةً 18) ويملأ في Rec بمعلومات حول الملف المطابق الأول. من أجل مواصلة البحث ، يجب علينا استخدام نفس سجل TSearcRec وتمريره إلى وظيفة FindNext. عند اكتمال البحث ، يجب استدعاء إجراء FindClose لتحرير موارد Windows الداخلية. TSearchRec هو سجل يعرف بأنه:

عند العثور على الملف الأول ، يتم تعبئة المعلمة Rec ، ويمكن استخدام الحقول (القيم) التالية بواسطة مشروعك.
. Attr، سمات الملف كما هو موضح أعلاه.
. اسم يحمل سلسلة تمثل اسم ملف ، بدون معلومات المسار
. بحجم بالبايت من الملف الموجود.
. زمن يخزن تاريخ ووقت تعديل الملف كتاريخ للملف.
. FindData يحتوي على معلومات إضافية مثل وقت إنشاء الملف وآخر وقت وصول وأسماء الملفات الطويلة والقصيرة.

بحث عن التالي

تعتبر وظيفة FindNext الخطوة الثانية في إجراء البحث المفصل عن الملفات. يجب عليك تمرير نفس سجل البحث (Rec) الذي تم إنشاؤه بواسطة استدعاء FindFirst. القيمة المرجعة من FindNext هي صفر للنجاح أو رمز خطأ لأي خطأ.

FindClose

هذا الإجراء هو دعوة الإنهاء المطلوبة لـ FindFirst / FindNext.

قناع ملف تعاودي مطابق في البحث في دلفي

هذا هو مشروع "البحث عن الملفات" كما يظهر في وقت التشغيل. أهم المكونات في النموذج هي مربعي تحرير ، مربع قائمة واحد ، مربع اختيار وزر. تُستخدم مربعات التحرير لتحديد المسار الذي تريد البحث فيه وقناع الملف. يتم عرض الملفات التي تم العثور عليها في مربع القائمة وإذا تم تحديد خانة الاختيار ، يتم فحص جميع المجلدات الفرعية بحثًا عن الملفات المطابقة.

فيما يلي مقتطف رمز صغير من المشروع ، فقط لإظهار أن البحث عن الملفات باستخدام دلفي أمر سهل كما يمكن:

instagram story viewer