Cómo: Copiar archivos con un modelo específico en un directorio en Visual Basic
El método GetFiles devuelve una colección de solo lectura de cadenas que representan los nombres de ruta de acceso de los archivos. Puede usar el parámetro wildCards
para especificar un patrón concreto.
Si no se encuentran archivos coincidentes, se devuelve una colección vacía.
Puede usar el método CopyFile para copiar los archivos en un directorio.
Para copiar archivos con un patrón específico en un directorio
Use le método
GetFiles
para devolver la lista de archivos. En este ejemplo se devuelven todos los archivos .rtf del directorio especificado.For Each foundFile As String In My.Computer.FileSystem.GetFiles( My.Computer.FileSystem.SpecialDirectories.MyDocuments, Microsoft.VisualBasic.FileIO.SearchOption.SearchTopLevelOnly, "*.rtf")
Use el método
CopyFile
para copiar los archivos. En este ejemplo se copian los archivos en el directorio denominadotestdirectory
.My.Computer.FileSystem.CopyFile(foundFile, "C:\testdirectory\" & My.Computer.FileSystem.GetName(foundFile))
Cierre la instrucción
For
con una instrucciónNext
.Next
Ejemplo
En el ejemplo siguiente, que presenta los fragmentos de código anteriores de forma completa, se copian todos los archivos .rtf del directorio especificado en el directorio denominado testdirectory
.
For Each foundFile As String In My.Computer.FileSystem.GetFiles(
My.Computer.FileSystem.SpecialDirectories.MyDocuments,
Microsoft.VisualBasic.FileIO.SearchOption.SearchTopLevelOnly, "*.rtf")
My.Computer.FileSystem.CopyFile(foundFile, "C:\testdirectory\" & foundFile)
Next
Seguridad de .NET Framework
Las condiciones siguientes pueden provocar una excepción:
La ruta de acceso no es válida por una de las razones siguientes: es una cadena de longitud cero, solo contiene un espacio en blanco, contiene caracteres no válidos o es una ruta de acceso de dispositivo (empieza por \\.\) (ArgumentException).
La ruta de acceso no es válida porque es
Nothing
(ArgumentNullException).El directorio no existe (DirectoryNotFoundException).
El directorio apunta a un archivo existente (IOException).
La ruta supera la longitud máxima definida por el sistema (PathTooLongException).
Un nombre de archivo o de directorio de la ruta de acceso contiene un signo de dos puntos (:) o tiene un formato no válido (NotSupportedException).
El usuario no tiene los permisos necesarios para ver la ruta de acceso (SecurityException). El usuario no tiene los permisos necesarios (UnauthorizedAccessException).