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