Export (0) Print
Expand All

FileSystem.CopyDirectory Method (String, String, Boolean)

Copies the contents of a directory to another directory.

Namespace:  Microsoft.VisualBasic.FileIO
Assembly:  Microsoft.VisualBasic (in Microsoft.VisualBasic.dll)

public static void CopyDirectory(
	string sourceDirectoryName,
	string destinationDirectoryName,
	bool overwrite
)

Parameters

sourceDirectoryName
Type: System.String
The directory to be copied.
destinationDirectoryName
Type: System.String
The location to which the directory contents should be copied.
overwrite
Type: System.Boolean
True to overwrite existing files; otherwise False. Default is False.

ExceptionCondition
ArgumentException

The new name specified for the directory contains a colon (:) or slash (\ or /).

ArgumentException

The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\.\).

ArgumentNullException

destinationDirectoryName or sourceDirectoryName is Nothing or an empty string.

DirectoryNotFoundException

The source directory does not exist.

IOException

The source directory is a root directory

IOException

The combined path points to an existing file.

IOException

The source path and target path are the same.

InvalidOperationException

The operation is cyclic.

PathTooLongException

The path exceeds the system-defined maximum length.

NotSupportedException

A folder name in the path contains a colon (:) or is in an invalid format.

SecurityException

The user lacks necessary permissions to view the path.

UnauthorizedAccessException

A destination file exists but cannot be accessed.

This method copies the contents of the source directory to the target directory. If the target directory does not exist, it is created. If a directory with the same name exists in the target location, the contents of the two directories are merged. You can specify a new name for the directory during the operation.

When copying files within a directory, exceptions may be thrown that are caused by a specific file, such as a file existing during a merge while overwrite is set to False. When such exceptions are thrown, they are consolidated into a single exception whose Data property holds entries in the form of an IDictionary in which the file or directory path is the key and the specific exception message is contained in the corresponding value. Use For…Each to enumerate through the entries.

The following table lists examples of tasks involving the My.Computer.FileSystem.CopyDirectory method.

The following example copies the contents of directory TestDirectory1 into TestDirectory2, overwriting existing files.


My.Computer.FileSystem.CopyDirectory("C:\TestDirectory1", "C:\TestDirectory2", True)


Replace C:\TestDirectory1 and C:\TestDirectory2 with the path and name of the directory you wish to copy and the location to which you wish to copy it.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Community Additions

ADD
Show:
© 2014 Microsoft