The code below will copy files from one directory to another with minimal error checking.

=================================================================

import java.io.*;

public class copy {
public static final int BUFFER_SIZE = 4096;

public static final void copyStream(InputStream input, OutputStream output,
byte[] buffer)
throws IOException
{
int bytesRead;

while((bytesRead = input.read(buffer)) != -1)
output.write(buffer, 0, bytesRead);
}

public static final void main(String[] args) {
byte[] buffer = new byte[BUFFER_SIZE];
BufferedInputStream input;
BufferedOutputStream output;
File destination;

if(args.length < 2) {
System.err.println("Usage: copy file1 file2 ... dest");
return;
}

try {
destination = new File(args[args.length - 1]);
buffer = new byte[BUFFER_SIZE];

if(args.length > 2 || destination.isDirectory()) {
if(!destination.isDirectory()) {
System.err.println(
"When copying multiple files, last argument must be a directory.");
return;
}

for(int i= 0;i < (args.length - 1); ++i) {
File inFile;

inFile = new File(args[i]);

input =
new BufferedInputStream(new FileInputStream(inFile));

output =
new BufferedOutputStream(new FileOutputStream(
new File(destination, inFile.getName())));

copyStream(input, output, buffer);

input.close();
output.close();
}
} else {
input =
new BufferedInputStream(new FileInputStream(args[0]));
output =
new BufferedOutputStream(new FileOutputStream(destination));

copyStream(input, output, buffer);

input.close();
output.close();
}
} catch(IOException ioe) {
ioe.printStackTrace();
return;
}
}
}