FileInfo.CopyTo Method (String, Boolean)


Copies an existing file to a new file, allowing the overwriting of an existing file.

Namespace:   System.IO
Assembly:  mscorlib (in mscorlib.dll)

member CopyTo : 
        destFileName:string *
        overwrite:bool -> FileInfo


Type: System.String

The name of the new file to copy to.

Type: System.Boolean

true to allow an existing file to be overwritten; otherwise, false.

Return Value

Type: System.IO.FileInfo

A new file, or an overwrite of an existing file if overwrite is true. If the file exists and overwrite is false, an IOException is thrown.

Exception Condition

destFileName is empty, contains only white spaces, or contains invalid characters.


An error occurs, or the destination file already exists and overwrite is false.


The caller does not have the required permission.


destFileName is null.


The directory specified in destFileName does not exist.


A directory path is passed in, or the file is being moved to a different drive.


The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.


destFileName contains a colon (:) in the middle of the string.

Use this method to allow or prevent overwriting of an existing file. Use the CopyTo method to prevent overwriting of an existing file by default.


Whenever possible, avoid using short file names (such as XXXXXX~1.XXX) with this method. If two files have equivalent short file names then this method may fail and raise an exception and/or result in undesirable behavior

The following example demonstrates both overloads of the CopyTo method.

No code example is currently available or this language may not be supported.

The following example demonstrates copying one file to another file, specifying whether to overwrite a file that already exists.

No code example is currently available or this language may not be supported.


for reading and writing files. Associated enumerations: FileIOPermissionAccess.Read, FileIOPermissionAccess.Write

Universal Windows Platform
Available since 10
.NET Framework
Available since 1.1
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top