Copies the file this to the location specified by destination
.
Can not handle recursive copies of directories.
If the flag OVERWRITE is specified an already existing
destination
file is overwritten.
If the flag NOFOLLOW_SYMLINKS is specified then symlinks will be copied as symlinks, otherwise the target of the this symlink will be copied.
If cancellable
is not null, then the operation can be cancelled by triggering
the cancellable object from another thread. If the operation was cancelled, the error
g_io_error_cancelled will be returned.
If progress_callback
is not null, then the operation can be monitored by
setting this to a FileProgressCallback function.
progress_callback_data
will be passed to this function. It is guaranteed that this callback will be called after all data has
been transferred with the total number of bytes copied during the operation.
If the this file does not exist, then the g_io_error_not_found
error is returned, independent on the status of the destination
.
If OVERWRITE is not specified and the target exists, then the error g_io_error_exists is returned.
If trying to overwrite a file over a directory, the g_io_error_is_directory error is returned. If trying to overwrite a directory with a directory the g_io_error_would_merge error is returned.
If the source is a directory and the target does not exist, or OVERWRITE is specified and the target is a file, then the g_io_error_would_recurse error is returned.
If you are interested in copying the File object itself (not the on-disk file), see dup.
this |
input File |
destination |
destination File |
flags |
set of FileCopyFlags |
cancellable |
optional Cancellable object, null to ignore |
progress_callback |
function to callback with progress information, or null if progress information is not needed |
progress_callback_data |
user data to pass to |
true on success, false otherwise. |