Java in Hindi – File I/O

  • Introduction to java file I/O in Hindi 
  • Java Streams in Hindi 
  • Java Byte & character streams in Hindi

Introduction to Java File I/O 

Java के file i/o feature की मदद से आप files द्वारा input और output process कर सकते है। जब भी यूज़र से program में input लेने की बात होती है तो ऐसा program run करवाने के बाद console की मदद से किया जाता है और output भी console पर ही देखा जाता है।

कुछ software ऐसे होते है जो बहुत सारे data को एक साथ execute करते है। इसलिए उनमें input भी इतना ही अधिक दिया जाता है। लेकिन इतना सारा input किसी human के द्वारा हाथों से नहीं किया जा सकता है।

Input के साथ ही कई बार output भी इतना अधिक हो सकता है की किसी human द्वारा इसको computer की screen पर देखना possible नहीं होता है। ऐसा भी हो सकता है की इस output की आपको किसी और execution में जरुरत पड़े या आप इसको print करना चाहते है। ऐसी situation में आप java के File I/O mechanism को यूज़ कर सकते है।

Classes to Process Files For I/O

Java कुछ ऐसी classes provide करती है जिनकी मदद से आप input भी किसी file से read कर सकते है और output भी किसी file में store करवा सकते है। मेरा मतलब है यदि आप चाहे तो input console से लेने की बजाय किसी file से read कर सकते है और output भी console पर दिखाने की बजाए किसी file में store करके दिखा सकते है।

Files के द्वारा input और output operations perform करने के लिए आप stream को यूज़ करते है। Data की sequence को stream कहते है। Inputstream से input लिया जाता है। और output stream से output लिया जाता है।

Java में streams 2 तरह की होती है। Byte stream में data bytes की form में होता है और character stream में data character की form में होता है। Java में file I/O इनमें से किसी भी stream से perform किया जा सकता है।

Byte Stream

Byte stream में data bytes की form में होता है। इसमें input और output के लिए 2 classes provide की गयी है। ये दोनों abstract classes होती है। ये classes ऐसे methods provide करती है जिनकी मदद से आप files के साथ operations perform करते है।

InputStream

ये एक abstract class है। ये byte input stream class होती है। FileInputStream class इसे extend करती है। और इसके methods को file operations के लिए यूज़ करती है। 

Method
Description
int read()
Reads data from file in form of bytes.
void close()
Closes input stream

FileInputStream एक byte stream input class है। इस class का object create करके आप byte input stream create करते है। फिर इस object पर different methods call करके files के साथ operations perform करते है।

import java.io.*; 
 
public class FileIOExample 
{ 
     public static void main(String args[]) throws IOException 
     { 
         FileInputStream in = new FileInputStream("directory-address-of-file"); 
 
         int a; 
 
         while((a = in.read()) != -1) 
         { 
              System.out.println((char)a); 
              in.close(); 
         } 
     } 
}

OutputStream 

ये एक abstract class होती है। ये एक byte output stream class है। FileOutputStream class इसे extend करती है। इस class के कुछ methods निचे दिए हुए है जो FileOutputStream class यूज़ करती है।

Method
Description
int write()
Writes data to file in form of bytes. 
void close()
Closes output stream

FileOutputStream class एक byte stream output class है। सबसे पहले आप इस class का object क्रिएट करते है और फिर उस object पर write method call करके bytes() को file में write() करते है। 

import java.io.*; 
 
public class FileIOExample 
{ 
    public static void main(String args[]) throws IOException 
    { 
        FileOutputStream out = new FileOutputStream("directory-address-to-store-file"); 
 
        a = 5; 
         
        out.write(a); 
        out.close(); 
    } 
}    

Character Stream

एक character stream में data bytes में ना होकर सीधा characters की form में होता है। Java character streams में input और output के लिए 2 abstract classes यूज़ की जाती है।  

Reader 

Reader एक abstract class है। ये एक character input stream class है। FileReader class इसे extend करती है।

Method
Description
int read()
Reads data from file in form of characters. 
void close()
Closes output stream

FileReader एक character input stream class है। ये Reader class को extend करती है। इस class का object create करके आप character input stream create करते है। फिर उस object पर read method call करके data read करते है। 

import java.io.*; 
 
public class FileIOExample 
{ 
   FileReader in = new FileReader("director-address-of-file"); 
    
   int a; 
    
   while((a=in.read())!=-1) 
   { 
        System.out.print((char)a); 
        in.close(); 
   } 
}

Writer 

ये एक abstract class है। ये एक character output stream class है। FileWriter class इसे extend करती है। इस class के कुछ methods होते है जिन्हें FileWriter class यूज़ करती है। 

Method
Description
int read()
Writes data to file in character form.  
void close()
Closes output stream

FileWriter class का object create करके आप character output stream क्रिएट करते है। फिर उस object पर write() method call करके data write() करते है। 

import java.io.*; 
 
public class FileIOExample 
{ 
   public static void main(String args[]) throws IOException 
   { 
       FileWriter out = new FileWriter("directory-addres-of-File"); 
        
       int a = 5; 
 
       out.write(); 
 
       out.close(); 
   } 
}

Previous: Java Multithreading
Next: Java Serialization