Bnlang এ ডিরেক্টরি নিয়ে কাজ

ডিরেক্টরি হলো ফাইলসিস্টেমে ফাইল গ্রুপ করার উপায়। বিল্ট-ইন io মডিউল ডিরেক্টরি ইন্সপেক্ট, তৈরি, লিস্ট ও মুছে ফেলার জন্য যা প্রয়োজন সব দেয় — কোনো থার্ড-পার্টি লাইব্রেরি ছাড়াই।


Creating a Directory

io.mkdir(path) ডিরেক্টরি তৈরি করে এবং সব মধ্যবর্তী প্যারেন্ট স্বয়ংক্রিয়ভাবে — আলাদা recursive: true ফ্ল্যাগের প্রয়োজন নেই।

import "io" as io;

io.mkdir("data/users/alice");
print(io.is_dir("data/users/alice"));   // true

Listing Entries

io.list_dir(path) এন্ট্রি-নামের একটি লিস্ট ফেরত দেয় (কোনো . বা .. নেই)।

import "io"   as io;
import "path" as path;

var names = io.list_dir(".");
for (var name of names) {
    var full = path.join([".", name]);
    if (io.is_dir(full)) {
        print("[dir]", name);
    } else {
        print("     ", name);
    }
}

Removing

io.remove(path) একটি ফাইল বা ডিরেক্টরি মুছে ফেলে। ডিরেক্টরির ক্ষেত্রে কনটেন্ট রিকার্সিভভাবে মুছে যায় — সতর্ক থাকুন।

import "io" as io;

io.remove("data/users/alice");
print(io.exists("data/users/alice"));   // false

Best Practices

  • কোনো পাথ লিস্ট বা রিকার্স করার আগে io.is_dir (বা io.exists + io.is_dir) ব্যবহার করুন।
  • ডিরেক্টরিতে io.remove রিকার্সিভ — কল করার আগে পাথটি দু'বার চেক করুন।
  • হার্ডকোডেড সেপারেটরের পরিবর্তে io.mkdir এর সাথে path.join ব্যবহার করুন।