//*****************************************************************************
// Read file and copy into another using Java "nio" package
// Entire file is read into a List and then written to another file                           
//*****************************************************************************
import java.nio.file.*;                             //import nio package
import java.util.*;                                 //for the List class

public class copyFile2   
{
    public static void main(String[] args)
    {
        try { 
            Path inFile  = Paths.get("/home/sultans/web/java/demo/8inpout/data/temp.txt");
            Path outFile = Paths.get("/home/sultans/web/java/demo/8inpout/data/temp2.txt");

            //----READ---------------------
 
            List<String> list1 = Files.readAllLines(inFile);    //read all lines into a String List

            int nLines = list1.size();                          //number of lines
            String[] array = new String[nLines];                //create an array of same number of lines 

            int i=0;
            for(String line : list1)                            //for each line in list1
               array[i++] = line;                               //copy into array

            //----WRITE--------------------

            List<String> list2 = new ArrayList<String>();       //create an ArrayList as a List

            for (String line : array)                           //for each line in array
                list2.add(line);                                //copy into the list

            Files.write(outFile, list2);                        //write list into file  

            System.out.println("Copy Successful");
        }
        catch(Exception e) 
        {
            System.out.print(e);                                //print the exception
            e.printStackTrace();                                //print trace dump
        }
    }
}