जावा में फ़ाइल सिस्टम के साथ कार्य: मूल बातों से उन्नत तकनीकों तक
फ़ाइल सिस्टम के साथ कार्य प्रोग्रामिंग में मूलभूत कार्यों में से एक है। Java डेवलपर्स को फ़ाइलों और निर्देशिकाओं के प्रबंधन के लिए शक्तिशाली और लचीले उपकरण प्रदान करता है। इस लेख में, हम विस्तार से समझेंगे कि क्लासिकल पैकेज java.io और आधुनिक java.nio.file दोनों का उपयोग करके जावा में फ़ाइल सिस्टम के साथ कैसे काम करें। आप फ़ाइलें बनाना, पढ़ना, लिखना, निर्देशिकाओं का प्रबंधन करना और अपवादों को संभालना सीखेंगे।
जावा में फ़ाइलों के साथ कार्य की मूल बातें: File क्लास
java.io.File क्लास जावा में फ़ाइल सिस्टम के साथ कार्य की आधारशिला है। यह किसी फ़ाइल या निर्देशिका के पथ का एक अमूर्त प्रतिनिधित्व है। यह समझना महत्वपूर्ण है कि File फ़ाइल की सामग्री को संग्रहीत नहीं करता है, बल्कि केवल गुणों की जाँच और संचालन करने के लिए विधियाँ प्रदान करता है।
File के साथ बुनियादी संचालन देखें:
import java.io.File;import java.io.IOException;
public class FileExample { public static void main(String[] args) { // File ऑब्जेक्ट बनाना File file = new File("example.txt"); File directory = new File("myDirectory");
// अस्तित्व की जाँच System.out.println("फ़ाइल मौजूद है: " + file.exists()); System.out.println("फ़ोल्डर मौजूद है: " + directory.exists());
// नई फ़ाइल बनाना try { if (file.createNewFile()) { System.out.println("फ़ाइल बनाई गई: " + file.getName()); } else { System.out.println("फ़ाइल पहले से मौजूद है"); } } catch (IOException e) { System.err.println("फ़ाइल बनाने में त्रुटि: " + e.getMessage()); }
// निर्देशिका बनाना if (directory.mkdir()) { System.out.println("फ़ोल्डर बनाया गया: " + directory.getName()); }
// फ़ाइल के बारे में जानकारी प्राप्त करना System.out.println("पूर्ण पथ: " + file.getAbsolutePath()); System.out.println("फ़ाइल का आकार: " + file.length() + " बाइट्स"); System.out.println("पढ़ने योग्य: " + file.canRead()); System.out.println("लिखने योग्य: " + file.canWrite());
// फ़ाइल हटाना if (file.delete()) { System.out.println("फ़ाइल हटा दी गई"); } }}File क्लास निर्देशिका में फ़ाइलों की सूची के साथ भी काम करने की अनुमति देता है:
File currentDir = new File(".");String[] contents = currentDir.list();for (String item : contents) { System.out.println(item);}फ़ाइलों को पढ़ना और लिखना: इनपुट-आउटपुट स्ट्रीम
फ़ाइलों की सामग्री के साथ सीधे काम करने के लिए Java I/O स्ट्रीम का उपयोग करता है। टेक्स्ट फ़ाइलों के साथ काम करने के लिए मुख्य क्लासेस FileReader/FileWriter और BufferedReader/BufferedWriter हैं।
फ़ाइल को पंक्ति दर पंक्ति पढ़ना
import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;
public class ReadFileExample { public static void main(String[] args) { String fileName = "input.txt"; try (BufferedReader reader = new BufferedReader(new FileReader(fileName))) { String line; while ((line = reader.readLine()) != null) { System.out.println(line); } } catch (IOException e) { System.err.println("फ़ाइल पढ़ने में त्रुटि: " + e.getMessage()); } }}try-with-resources संरचना पर ध्यान दें। यह स्वचालित रूप से स्ट्रीम को बंद करता है, जिससे संसाधन रिसाव को रोका जा सकता है।
फ़ाइल में लिखना
import java.io.BufferedWriter;import java.io.FileWriter;import java.io.IOException;
public class WriteFileExample { public static void main(String[] args) { String fil