public static boolean copy(File src, File dst)
	{
		if (src.isDirectory())
			throw new IllegalArgumentException("Can't copy directory: " + src);
		
		if (dst.isDirectory())
			dst = new File(dst, src.getName());
		
		try 
		{
			FileInputStream fis = null;
			FileOutputStream fos = null;
			try 
			{
				fis = new FileInputStream(src);
				fos = new FileOutputStream(dst);
				byte[] buffer = new byte[4096];
				int read;
				while ((read = fis.read(buffer)) != -1)
				{
					fos.write(buffer, 0, read);
				}
			} 
			finally 
			{
				if (fis != null) fis.close();
				if (fos != null) fos.close();
			}
			return true;
		} 
		catch (IOException e) 
		{
			e.printStackTrace();
			return false;
		}
	}