code: public static long copy(File source, File target) throws FileNotFoundException, IOException
    {
      return copy(new FileInputStream(source), new FileOutputStream(target));
    }
docs: Copy source file to target. Copy destination should be a file and this method throws access denied if attempt to
  write to a directory. Source file should exist but target is created by this method, but if not already exist.
  
  @param source file to read from, should exist,
  @param target file to write to.
  @return the number of bytes transfered.
  @throws FileNotFoundException if source file does not exist or target file does not exist and cannot be created.
  @throws IOException if copy operation fails, including if <code>target</code> is a directory.