জনের উত্তর যদি আপনি নিশ্চিত হন যে আপনি যে ফাইলটির সাথে ফাইল তৈরি করছেন সে ক্ষেত্রে প্যারেন্ট ডিরেক্টরিগুলি অন্তর্ভুক্ত রয়েছে, অর্থাত যদি আপনি নিশ্চিত হন যে পথটি ফর্মের <parent-dir>/<file-name>।
যদি এটি না হয়, অর্থাত্ এটি ফর্মের একটি আপেক্ষিক পথ <file-name>, তবে getParentFile()ফিরে আসবে null।
যেমন
File f = new File("dir/text.txt");
f.getParentFile().mkdirs();
File f = new File("text.txt");
f.getParentFile().mkdirs();
সুতরাং যদি আপনার ফাইলপথটি পিতামাত ডিরেক্টরিগুলি অন্তর্ভুক্ত করতে পারে বা নাও পারে তবে আপনি নিম্নলিখিত কোডের সাথে সুরক্ষিত:
File f = new File(filename);
if (f.getParentFile() != null) {
f.getParentFile().mkdirs();
}
f.createNewFile();
new File("file.txt").getParentFile()আয়null,new File("dir/file.txt").getParentFile()হিসাবে একই ফেরৎnew File("dir")