Java tutorial
import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileWriter; import java.io.IOException; import java.nio.channels.FileChannel; public class FileUtils { public static void copyFile(File in, File out) throws IOException { FileChannel inChannel = new FileInputStream(in).getChannel(); FileChannel outChannel = new FileOutputStream(out).getChannel(); try { // magic number for Windows, 64Mb - 32Kb) int maxCount = (64 * 1024 * 1024) - (32 * 1024); long size = inChannel.size(); long position = 0; while (position < size) { position += inChannel.transferTo(position, maxCount, outChannel); } } catch (IOException e) { throw e; } finally { if (inChannel != null) inChannel.close(); if (outChannel != null) outChannel.close(); } } public static void makeFile(String Path, String content) { try { // Create file FileWriter fstream = new FileWriter(Path); BufferedWriter bf = new BufferedWriter(fstream); bf.write(content); // Close the output stream bf.close(); } catch (Exception e) {// Catch exception if any System.err.println("Error: " + e.getMessage()); } } public static void main(String args[]) throws IOException { FileUtils.copyFile(new File(args[0]), new File(args[1])); } }