WebNFS Developer's Guide

Copying a File

This program does a simple file copy.

Usage:

% java xcopy src dest

Example B-1

import java.io.*;
import com.sun.xfile.*;
class xcopy {
     public static void main(String av[]) {
          try {
               String srcFile = av[0];	    
               String dstFile = av[1];	

               XFileInputStream  in  = new XFileInputStream(srcFile)	
               XFileOutputStream out = new XFileOutputStream(dstFile);

               int c;        
               byte[] buf = new byte[32768];            
               long elapsedtime = System.currentTimeMillis();
               int filesz = 0;		

               while ((c = in.read(buf)) > 0) {                
                    filesz += c;                
                    out.write(buf, 0, c);               
                    System.out.print("" + filesz);            
               }            

               System.out.println();       
               in.close();            
               out.close();            

               elapsedtime = System.currentTimeMillis() - elapsedtime;
               int rate = (int) (filesz / (elapsedtime / 1000.0) / 1024);
               System.err.println(filesz + " bytes copied @ " + rate + "Kb/sec");
          } catch (IOException e) {	    
                    System.err.println(e);        
          }    
     }
}