Header
Group Services: Technology Consulting
phone +91-9999-283-283/9540-283-283
email info@sisoft.in

Java I/O Example

List of Java Examples

1. FileOutStream Example: Write to a file

2. FileInputStream Example: Read from a file

3. FileOutputStream Example along with Try With Resources

4. Copy file Utility using Byte Stream Classes (FileInputStream, FileOutputStream)

5. Using Character Stream Class FileWriter to write to a file

6. BufferedInputStream Example

6. DataStream Example (DataInputStream & DataOutputStream)

7. ObjectStream Example

8. Using File Class to view file attributes (Complete path, length, file type(regular/directory)

9. ListDirectory using File Methods (list, listFiles)

10. List all files in a directory and its sub directories

FileOutStream Example: Write to a file


import java.io.FileOutputStream;

public class I01FosExample {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		 try{    
			 FileOutputStream fout=new FileOutputStream("testout.txt");    
             String s="Welcome to Java Course and Today is Monday(19-Jun-2017)";    
             byte b[]=s.getBytes();//converting string into byte array    
             fout.write(b);    
             fout.close();    
             System.out.println("success...");    
            }catch(Exception e){System.out.println(e);}    
      }    
}



FileInputStream Example: Read from a file


import java.io.FileInputStream;

public class I02FisExample {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		try{    
            FileInputStream fin=new FileInputStream("testout.txt");    
            int i=0;    
            while((i=fin.read())!=-1){    
             System.out.print((char)i);    
            }    
            fin.close();    
          }catch(Exception e)
		{
        	  System.out.println(e);
        }    
	}

}



FileOutputStream Example along with Try With Resources


import java.io.FileOutputStream;

public class I03FosExampleTryWithRes {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		 try(FileOutputStream fout=new FileOutputStream("testout12.txt")){                 
             String s="Welcome to Java Course and Try With Resources";    
             byte b[]=s.getBytes();//converting string into byte array    
             fout.write(b);    
           //  fout.close();    
             System.out.println("success...");    
            }catch(Exception e){System.out.println(e);}    
      } 
}



Copy file Utility using Byte Stream Classes (FileInputStream, FileOutputStream)


Note: 
1) Program Arguments: Source_File_Name Destination_File_Name
2) Converstion of byte array to String  

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class I04CopyFile {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
       if ((args.length==0)||(args.length<2)){
    	   System.out.println("Please provide source and destination file");
    	   return;
       }
       String srcFile=args[0];
       String destFile = args[1];
       try{
    	   FileInputStream inStream=new FileInputStream(srcFile);
    	   FileOutputStream outStream = new FileOutputStream(destFile);
    	   byte[] buffer = new byte[1024];
    	   
   	    int length;
   	    /*copying the contents from input stream to
   	     * output stream using read and write methods
   	     */
   	    while ((length = inStream.read(buffer)) > 0){
   	    	outStream.write(buffer, 0, length);
   	    	System.out.println("Buffer length:"+length);
   	    	
   	    // Convert byte array to String
   	    	
   	    	String str2 = new String(buffer,"UTF-8");
   	    	System.out.println(str2);
   	    	
   	    }

   	    //Closing the input/output file streams
   	    inStream.close();
   	    outStream.close();

   	    System.out.println("File copied successfully!!");

   	}catch(IOException ioe){
   		ioe.printStackTrace();
   	 }
       }
       
		
		
	} 


Using Character Stream Class FileWriter to write to a file

import java.io.FileWriter;

public class I05FileWriterExample {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		 try{    
			 FileWriter fw=new FileWriter("testout12.txt");    
             String s="Welcome to Java Course and File Writer";    
             fw.write(s);    
             fw.close();    
             System.out.println("File writer success...");    
            }catch(Exception e){System.out.println(e);}    

	}

}



BufferedInputStream Example

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

public class I06BisExample {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		  BufferedInputStream bis = null;
	      FileInputStream  fis= null;

	      try
	      {
	          //FileInputStream to read the file
	          fis = new FileInputStream("about.txt");

	          /*Passed the FileInputStream to BufferedInputStream
	           *For Fast read using the buffer array.*/
	          bis = new BufferedInputStream(fis);

	          /*available() method of BufferedInputStream
	           * returns 0 when there are no more bytes
	           * present in the file to be read*/
	          while( bis.available() > 0 ){             	
	              System.out.print((char)bis.read());
	          }

	       }catch(FileNotFoundException fnfe)
	        {
	            System.out.println("The specified file not found" + fnfe);
	        }
	        catch(IOException ioe)
	        {
	            System.out.println("I/O Exception: " + ioe); 
	        }
	        finally
	        {
	            try{
	               if(bis != null && fis!=null)
	               {
	       	          fis.close();
	                  bis.close();
	               }      
	             }catch(IOException ioe)
	              {
	                  System.out.println("Error in InputStream close(): " + ioe);
	              }         
	        }
	}

}


DataStream Example (DataInputStream & DataOutputStream)

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class I06DataInputStream {

	public static void main(String[] args) throws IOException {
		// TODO Auto-generated method stub
		 DataOutputStream dataOutputStream =
	                new DataOutputStream(
	                        new FileOutputStream("dataStream.bin"));

	        dataOutputStream.writeInt(123);
	        dataOutputStream.writeFloat(123.45F);
	        dataOutputStream.writeLong(789);

	        dataOutputStream.close();

	        DataInputStream dataInputStream =
	                new DataInputStream(
	                        new FileInputStream("dataStream.bin"));

	        int   int123     = dataInputStream.readInt();
	        float float12345 = dataInputStream.readFloat();
	        long  long789    = dataInputStream.readLong();

	        dataInputStream.close();

	        System.out.println("int123     = " + int123);
	        System.out.println("float12345 = " + float12345);
	        System.out.println("long789    = " + long789);		
		
	}

}


ObjectStream Example


Note: Use of serialazable. Please delete implements serializable and try running program.

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;

public class I08ObjectStreamExample {

	public static class Person implements Serializable {
        public String name = null;
        public int    age  =   0;
    }
	
	public static void main(String[] args) throws FileNotFoundException, IOException, ClassNotFoundException {
		// TODO Auto-generated method stub
		ObjectOutputStream objectOutputStream =
	            new ObjectOutputStream(new FileOutputStream("person.dat"));

	        Person person = new Person();
	        person.name = "Chandan Kumar";
	        person.age  = 19;

	        objectOutputStream.writeObject(person);
	        objectOutputStream.close();


	        ObjectInputStream objectInputStream =
	            new ObjectInputStream(new FileInputStream("person.dat"));

	        Person personRead = (Person) objectInputStream.readObject();

	        objectInputStream.close();

	        System.out.println(personRead.name);
	        System.out.println(personRead.age);
	}

}

Using File Class to view file attributes (Complete path, length,
file type(regular/directory)


import java.io.File;

public class I11FileAttributes {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		File f1 = new File("testout.txt");
		if (f1.isFile()){
		System.out.println("This is a regular file");	
		}
		System.out.println(f1.getAbsolutePath());
		System.out.println(f1.length());
		System.out.println(f1.getName());
		System.out.println(f1.isDirectory());
		
		
	}

}



ListDirectory using File Methods (list, listFiles)


Note: list returns File Names String array whereas listFiles return File object array

import java.io.File;

public class I12ListDirectory {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		File f2 = new File("C:");
		System.out.println(f2.getAbsolutePath());
		if (f2.isDirectory())
		{
			String[] list=f2.list();
			for (String x:list)
				System.out.println(x);
			
			File[] f3= f2.listFiles();
			for(File x: f3)
			{
				System.out.println(x.getName()+":"+x.length() );
			}
		}

	}

}


List all files in a directory and its sub directories


Note: Please note the usage of recursion here..

import java.io.File;
import java.io.IOException;

public class I14ListAllFiles {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		File currentDir = new File("D:\\Java-Pgms"); // current directory
		showDirectoryContents(currentDir);
	}

	public static void showDirectoryContents(File dir) {
		try {
			File[] files = dir.listFiles();
			for (File file : files) {
				if (file.isDirectory()) {
					System.out.println("directory:" + file.getCanonicalPath());
					showDirectoryContents(file);
				} else {
					System.out.println("     file:" + file.getCanonicalPath());
				}
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
		
		
	}

}