Об'єкт filesystemobject метод copyfolder і buildpath - як скопіювати папку

Об'єкт filesystemobject метод copyfolder і buildpath - як скопіювати папку

Перш ніж приступати до програмування, давайте подивимося, як скопіювати папку в ручному режимі:

Як скопіювати папку вручну

Перш за все, вам потрібно відкрити директорію або диск, в якому знаходиться пака, яку треба скопіювати. Натискаємо правою кнопкою миші по папці, в контекстному меню вибираємо пункт "Копіювати", натискаємо мишкою по даному пункту. Тепер нам треба відкрити той каталог або диск, в який треба скопіювати структуру папок або просто папку. Клацаємо правою кнопкою миші по порожній області та в меню вибираємо пункт "Вставити", натискаємо по даному пункту і все, обрана папка скопійована. Однак, можна скопіювати таким же методом і кілька папок, просто виділяємо потрібні директорії і по одному з них вибираємо пункт "Копіювати", а вже далі, як і в прикладі вище, вставляємо вибрані документи в потрібне місце.

Варто звернути увагу, що скопіювати структуру папок найпростіше через менеджер файлів, наприклад, Total Commander. він хороший тим, що весь процес копіювання папок дозволяє тримати під контролем, і ви завжди зможете перевірити, чи всі дані скопійовані. У випадку з прикладом вище, ви можете просто використовувати комбінації клавіш "Ctrl + C" і "Ctrl + V", щоб скопіювати одну або кілька папок в потрібне місце. Також зверніть увагу, що якщо ви скопіюєте папки в один і той же місце, то Windows автоматично додасть до їх імен префікс. так як папок з однаковими іменами в одному місці бути не може.

Добре, тепер настав час зайнятися програмуванням і описом методів об'єкта FileSystemObject:

BuildPath (path, name) - Метод дозволяє додати до заданого шляху path нове ім'я name. Як це працює, ми розглянемо нижче.

  • source - Шлях до папки, яку потрібно скопіювати, можна використовувати символи узагальнення "?" - будь-який один символ або "*" - будь-яка кількість символів. У разі використання символів узагальнення, ми можемо, як копіювати папку в одному екземплярі, так і відразу декілька, це дозволить не використовувати в програмному коді цикли.
  • destination - Шлях до директорії, в яку потрібно скопіювати папку.
  • overwrite - Якщо параметр встановлено в логічне значення true - буде відбуватися заміна, false - не виробляти заміни (за замовчуванням).

І так, з теорією розібралися, тепер настав час приступити до програмування. Давайте зробимо так, я спочатку наведу програмний код на мові VBScript. дам пояснення до програмного коду, і ми продовжимо рухатися далі.

Тепер давайте розглянемо, як працює цей програмний код:

Спочатку створюється нова папка "Новий каталог_vbs" в поточній директорії, далі йде цикл for, в якому є 9 ітерацій, тобто, в поточній директорії буде створюватися 9 папок з шаблонним назвою.

Як скопіювати в папку

Об'єкт filesystemobject метод copyfolder і buildpath - як скопіювати папку

Добре, продовжимо програмувати, і тепер напишемо програмний код для сценарію на мові jscript:

Об'єкт filesystemobject метод copyfolder і buildpath - як скопіювати папку

Варто звернути увагу на одну особливість файлової системи Windows - спільний шлях не повинен перевищувати 256 символів. починаючи з кореневого диска. Наприклад, якщо шлях до файлу разом з його ім'ям становить 255 символів, а потім ви збільшите довжину імені тієї директорії, яка знаходиться на рівень або кілька рівнів вище, то вже не зможете отримати доступ до кінцевої точки, так як загальна довжина буде перевищувати 256 символів .