ডিরেক্টরি আছে কিনা পরীক্ষা করা

Rust:
ডিরেক্টরি আছে কিনা পরীক্ষা করা

কিভাবে:

রাস্টের স্ট্যান্ডার্ড লাইব্রেরি (std) ডিরেক্টরির বিদ্যমানতা যাচাই করার কার্যকারিতা সরবরাহ করে, std::path::Path এবং std::fs মডিউলের মাধ্যমে। এখানে রাস্টের মানক প্রক্রিয়া ব্যবহার করে একটি সহজ উদাহরণ দেয়া হল:

use std::path::Path;

fn main() {
    let path = Path::new("/path/to/directory");
    if path.exists() && path.is_dir() {
        println!("ডিরেক্টরি বিদ্যমান আছে।");
    } else {
        println!("ডিরেক্টরি বিদ্যমান নেই।");
    }
}

ধরুন ডিরেক্টরি বিদ্যমান থাকলে, নমুনা আউটপুট:

ডিরেক্টরি বিদ্যমান আছে।

জটিল পরিস্থিতি বা উন্নত বৈশিষ্ট্যাদি (যেমন অ্যাসিঙ্ক্রোনাস ফাইল সিস্টেম অপারেশন) জন্য, আপনি হয়তো tokio মতো থার্ড-পার্টি লাইব্রেরি ব্যবহার করা বিবেচনা করতে পারেন, বিশেষ করে যদি আপনি একটি অ্যাসিঙ্ক রানটাইমের মধ্যে কাজ করেন। এখানে tokio ব্যবহার করে একই কাজ কিভাবে করবেন তা দেখানো হল:

প্রথমে, আপনার Cargo.toml-এ tokio যোগ করুন:

[dependencies]
tokio = { version = "1.0", features = ["full"] }

তারপর, আপনি tokio::fs ব্যবহার করে অ্যাসিঙ্ক্রোনাসভাবে ডিরেক্টরির বিদ্যমানতা যাচাই করুন:

use tokio::fs;

#[tokio::main]
async fn main() {
    let path = "/path/to/directory";
    match fs::metadata(path).await {
        Ok(metadata) => {
            if metadata.is_dir() {
                println!("ডিরেক্টরি বিদ্যমান আছে।");
            } else {
                println!("পাথটি বিদ্যমান কিন্তু এটি ডিরেক্টরি নয়।");
            }
        },
        Err(_) => println!("ডিরেক্টরি বিদ্যমান নেই।"),
    }
}

ধরুন ডিরেক্টরি বিদ্যমান না থাকলে, নমুনা আউটপুট:

ডিরেক্টরি বিদ্যমান নেই।

এই উদাহরণগুলি দেখায় যে, রাস্ট এবং এর ইকোসিস্টেম সফটওয়্যার ডেভেলপমেন্টের বিভিন্ন প্রয়োজনে মিলে যাওয়ার জন্য সিঙ্ক্রোনাস ও অ্যাসিঙ্ক্রোনাস উপায় প্রদান করে।