Avatar ·

كيفية الحصول على قائمة الملفات في دليل باستخدام Rust؟

مرحباً بالجميع! لقد بدأت للتو في تعلم Rust وأحاول كتابة أداة بسيطة للعمل مع الملفات. أحتاج إلى الحصول على قائمة بجميع الملفات في دليل معين. في Python كنت سأستخدم `os.listdir()`، لكن في Rust لا أستطيع العثور على ما يعادله. حاولت استخدام `std::fs::read_dir()`، لكنني لا أفهم كيفية معالجة النتيجة بشكل صحيح. إليك الكود الخاص بي: ```rust use std::fs; fn main() { let entries = fs::read_dir(".").unwrap(); for entry in entries { println!("{:?}", entry); } } ``` إنه يطبع شيئاً مثل `Ok(DirEntry(...))`، لكنني أحتاج فقط إلى أسماء الملفات. كما أريد التمييز بين الملفات والمجلدات، وربما تصفية الملفات ذات الامتداد المحدد فقط (مثل `.txt`). كما أنني مهتم بكيفية معالجة الأخطاء بدون `unwrap()`، لأنه في مشروع حقيقي قد لا يكون المجلد موجوداً أو غير قابل للقراءة. أرجو إرشادي حول كيفية تنفيذ الحصول على قائمة الملفات في Rust بشكل صحيح؟ يُفضل مع معالجة الأخطاء والتصفية. شكراً مسبقاً!