Практическое руководство. Перемещение набора файлов в Visual Basic

Обновлен: Ноябрь 2007

My.Computer.FileSystem.MoveFile позволяет перемещать файлы между каталогами.

Если каталог назначения не существует, он будет создан.

Чтобы переместить набор файлов из одного каталога в другой

  • Определите набор файлов и вызовите метод MoveFile. В этом примере все файлы перемещаются из каталога MyDocuments в каталог StorageDir.

    For Each foundFile As String In My.Computer.FileSystem.GetFiles( _
        My.Computer.FileSystem.SpecialDirectories.MyDocuments, _
        FileIO.SearchOption.SearchAllSubDirectories, "*.*")
    
        Dim foundFileInfo As New System.IO.FileInfo(foundFile)
        My.Computer.FileSystem.MoveFile(foundFile, "C:\StorageDir\" & foundFileInfo.Name)
    Next
    

Отказоустойчивость

Исключение может возникнуть при следующих условиях.

  • Путь является недопустимым, поскольку путь представляет собой строку нулевой длины (пустую строку), либо содержит только пробелы, либо содержит недопустимые знаки, либо представляет собой путь к устройству (начинается с \\.\) (ArgumentException).

  • Путь не является допустимым, поскольку он равен Nothing (ArgumentNullException).

  • Исходный файл не является допустимым или не существует (FileNotFoundException).

  • Объединенный путь указывает на существующий каталог, файл назначения существует и параметру overwrite присвоено значение False, файл с тем же именем в каталоге назначения уже используется, или у пользователя нет необходимых разрешений для доступа к файлу (IOException).

  • Имя файла или каталога в пути содержит двоеточие (:) или имеет недопустимый формат (NotSupportedException).

  • Параметр showUI имеет значение True, параметр onUserCancelOption имеет значение ThrowException и либо пользователь отменил операцию, либо возникла ошибка ввода-вывода (OperationCanceledException).

  • Длина пути превышает максимальную длину, определенную в системе (PathTooLongException).

  • У пользователя отсутствуют необходимые разрешения на просмотр пути (SecurityException).

  • Пользователь не имеет необходимого разрешения (UnauthorizedAccessException).

См. также

Задачи

Практическое руководство. Переименование файла в Visual Basic

Практическое руководство. Перемещение файла в Visual Basic

Практическое руководство. Создание копии файла в другом каталоге в Visual Basic

Практическое руководство. Анализ путей к файлам в Visual Basic

Практическое руководство. Перемещение каталога в Visual Basic

Практическое руководство. Перемещение содержимого каталога в Visual Basic

Ссылки

Метод My.Computer.FileSystem.MoveFile

Метод My.Computer.FileSystem.GetFiles

Другие ресурсы

Создание, удаление и перемещение файлов и папок в Visual Basic