Java में फ़ाइल सिस्टम के साथ काम करने का परिचय
\n\nफ़ाइल सिस्टम के साथ काम करना किसी भी प्रोग्रामिंग भाषा में मूलभूत कार्यों में से एक है। Java में इस उद्देश्य के लिए एक शक्तिशाली और लचीला टूलसेट मौजूद है। चाहे आप एक साधारण कंसोल एप्लिकेशन लिख रहे हों या एक जटिल वेब सेवा, फ़ाइलों और फ़ोल्डरों को प्रबंधित करने की क्षमता एक डेवलपर के लिए एक अनिवार्य कौशल है।
\n\nइस लेख में, हम Java में फ़ाइल सिस्टम के साथ बुनियादी संचालन पर चर्चा करेंगे। आप सीखेंगे कि फ़ाइलें कैसे बनाएं, पढ़ें, लिखें और हटाएं, साथ ही निर्देशिकाओं के साथ कैसे काम करें। यह सामग्री शुरुआती लोगों के लिए है, इसलिए सभी उदाहरण सरल और समझने में आसान होंगे।
\n\nJava फ़ाइलों के साथ काम करने के लिए दो मुख्य दृष्टिकोण प्रदान करता है: क्लासिक पैकेज java.io (Java 1.0 से शुरू) और आधुनिक पैकेज java.nio.file (Java 7 में दिखाई दिया)। हम दोनों पर विचार करेंगे, लेकिन मुख्य जोर NIO पर होगा, क्योंकि यह अधिक कुशल और सुविधाजनक है।
1. File क्लास: फ़ाइलों और फ़ोल्डरों के साथ काम करने का आधार
\n\nक्लास java.io.File फ़ाइल सिस्टम के साथ बातचीत करने का सबसे पुराना और सबसे सरल तरीका है। यह फ़ाइल या निर्देशिका के पथ का एक अमूर्तन प्रस्तुत करता है, लेकिन फ़ाइल की सामग्री को संग्रहीत नहीं करता। इसकी मदद से आप बुनियादी संचालन कर सकते हैं: अस्तित्व की जाँच करना, बनाना, नाम बदलना और ऑब्जेक्ट हटाना।
File ऑब्जेक्ट बनाना और अस्तित्व की जाँच करना
\n\nकाम शुरू करने के लिए, आपको File क्लास का एक इंस्टेंस बनाना होगा, कंस्ट्रक्टर में पथ पास करते हुए:
import java.io.File;\n\npublic class FileExample {\n public static void main(String[] args) {\n // वर्तमान निर्देशिका में "example.txt" फ़ाइल के लिए File ऑब्जेक्ट बनाएँ\n File myFile = new File("example.txt");\n\n // जाँचें कि फ़ाइल मौजूद है या नहीं\n if (myFile.exists()) {\n System.out.println("फ़ाइल मौजूद है!");\n System.out.println("पथ: " + myFile.getAbsolutePath());\n System.out.println("आकार: " + myFile.length() + " बाइट");\n } else {\n System.out.println("फ़ाइल नहीं मिली।");\n }\n }\n}\n\n\nफ़ाइलें और निर्देशिकाएँ बनाना
\n\nविधियाँ createNewFile() और mkdir() क्रमशः फ़ाइलें और फ़ोल्डर बनाने की अनुमति देती हैं:
import java.io.File;\nimport java.io.IOException;\n\npublic class CreateFiles {\n public static void main(String[] args) {\n // फ़ाइल बनाना\n File file = new File("newFile.txt");\n try {\n if (file.createNewFile()) {\n System.out.println("फ़ाइल बनाई गई: " + file.getName());\n } else {\n System.out.println("फ़ाइल पहले से मौजूद है।");\n }\n } catch (IOException e) {\n System.out.println("फ़ाइल बनाने में त्रुटि: " + e.getMessage());\n }\n\n // निर्देशिका बनाना\n File dir = new File("myDirectory");\n if (dir.mkdir()) {\n System.out.println("निर्देशिका बनाई गई: " + dir.getName());\n } else {\n System.out.println("निर्देशिका बनाने में विफल (संभवतः यह पहले से मौजूद है)।");\n }\n\n // नेस्टेड निर्देशिकाएँ बनाना (mkdirs)\n File nestedDir = new File("parent/child/grandchild");\n if (nestedDir.mkdirs()) {\n System.out.println("नेस्टेड निर्देशिकाएँ बनाई गईं।");\n }\n }\n}\n\n\nनाम बदलना और हटाना
\n\nविधियाँ renameTo() और delete() नाम प्रबंधित करने और फ़ाइलें हटाने की अनुमति देती हैं:
import java.io.File;\n\npublic class RenameDelete {\n public static void main(String[] args) {\n File oldFile = new File("newFile.txt");\n File newFile = new File("renamedFile.txt");\n\n // नाम बदलना\n if (oldFile.renameTo(newFile)) {\n System.out.println("फ़ाइल का नाम बदलकर " + newFile.getName() + " कर दिया गया");\n } else {\n System.out.println("नाम बदलने में विफल।");\n