এই দুটি পদ্ধতির মধ্যে পার্থক্য কি কেউ আমাকে বলতে পারবেন:
file.mkdir()
file.mkdirs()
এই দুটি পদ্ধতির মধ্যে পার্থক্য কি কেউ আমাকে বলতে পারবেন:
file.mkdir()
file.mkdirs()
উত্তর:
mkdirs()
এটি যে পথে প্রতিনিধিত্ব করে সেখানে পিতামাত ডিরেক্টরিগুলিও তৈরি করে File
।
javadocs এর জন্য mkdirs()
:
প্রয়োজনীয় তবে অস্তিত্বহীন অভিভাবক ডিরেক্টরি সহ এই বিমূর্ত পথের নাম অনুসারে ডিরেক্টরি তৈরি করে। মনে রাখবেন যে এই অপারেশনটি ব্যর্থ হলে এটি প্রয়োজনীয় কিছু মূল ডিরেক্টরি তৈরি করতে সফল হতে পারে।
javadocs এর জন্য mkdir()
:
এই বিমূর্ত পথের নাম অনুসারে ডিরেক্টরি তৈরি করে।
উদাহরণ:
File f = new File("non_existing_dir/someDir");
System.out.println(f.mkdir());
System.out.println(f.mkdirs());
false
প্রথমটির জন্য ফলন করবে [এবং কোনও দির তৈরি হবে না] এবং true
দ্বিতীয়টির জন্য এবং আপনি সৃষ্টি করবেনnon_existing_dir/someDir
mkdir()
ফিরে আসে true
নাকি false
? জাভাদোক এই দিকটি কভার করে বলে মনে হচ্ছে না।
mkdirs()
সম্পূর্ণরূপে নির্দিষ্ট ডিরেক্টরি পথ mkdir()
তৈরি করবে যেখানে কেবল নীচের অংশে সবচেয়ে বেশি ডিরেক্টরি তৈরি করবে, এটি যদি এটি তৈরি করার চেষ্টা করছে এমন ডিরেক্টরিটির প্যারেন্ট ডিরেক্টরিটি খুঁজে না পাওয়া যায় তবে ব্যর্থ হয়।
অন্য কথায় mkdir()
মত mkdir
এবং mkdirs()
মত হয় mkdir -p
।
উদাহরণস্বরূপ, কল্পনা করুন যে আমাদের একটি খালি /tmp
ডিরেক্টরি রয়েছে। নিম্নলিখিত কোড
new File("/tmp/one/two/three").mkdirs();
নিম্নলিখিত ডিরেক্টরি তৈরি করতে হবে:
/tmp/one
/tmp/one/two
/tmp/one/two/three
যেখানে এই কোড:
new File("/tmp/one/two/three").mkdir();
কোনও ডিরেক্টরি তৈরি করবে না - কারণ এটি খুঁজে না পেয়েছিল /tmp/one/two
- এবং ফিরে আসত false
।
mkdir()
এটি কেবলমাত্র পিতামাতার যদি হয় তবে একবারে কেবল একটি ডিরেক্টরি তৈরি করে। অন্যভাবে এটি উপ ডিরেক্টরি তৈরি করতে পারে (যদি নির্দিষ্ট পাথটি কেবল বিদ্যমান থাকে) এবং কোনও দুটি ডিরেক্টরির মধ্যে কোনও ডিরেক্টরি তৈরি করবেন না। সুতরাং এটি এক ডিরেক্টরিতে স্মলিটল ডিরেক্টরি তৈরি করতে পারে না
mkdirs()
একসাথে একাধিক ডিরেক্টরি (দুটি ডিরেক্টরির মধ্যেও) তৈরি করুন।