পিটার লরির উত্তর দুর্দান্ত কারণ এটি সাধারণ এবং বিশেষ কোনও কিছুর উপর নির্ভর করে না এবং এটি আপনার করা উচিত। আপনার যদি এমন কিছু প্রয়োজন হয় যা উপ-ডিরেক্টরিগুলি এবং তাদের সামগ্রীগুলিও সরিয়ে দেয় তবে পুনরাবৃত্তিটি ব্যবহার করুন:
void purgeDirectory(File dir) {
for (File file: dir.listFiles()) {
if (file.isDirectory())
purgeDirectory(file);
file.delete();
}
}
সাব-ডাইরেক্টরিগুলি এবং সেগুলির বিষয়বস্তুগুলি (আপনার প্রশ্নের অংশ) বাঁচাতে, নীচের মত পরিবর্তন করুন:
void purgeDirectoryButKeepSubDirectories(File dir) {
for (File file: dir.listFiles()) {
if (!file.isDirectory())
file.delete();
}
}
বা, যেহেতু আপনি এক-লাইন সমাধান চেয়েছিলেন:
for (File file: dir.listFiles())
if (!file.isDirectory())
file.delete();
এই ধরনের তুচ্ছ কাজের জন্য বাহ্যিক গ্রন্থাগার ব্যবহার করা ভাল ধারণা নয় যদি না আপনার যেকোনো কিছুর জন্য এই লাইব্রেরিটির প্রয়োজন হয়, সেক্ষেত্রে বিদ্যমান কোডটি ব্যবহার করা পছন্দনীয়। আপনি আপাকে লাইব্রেরি যেভাবেই ব্যবহার করছেন বলে মনে হয় তাই এর FileUtils.cleanDirectory()
পদ্ধতিটি ব্যবহার করুন ।