Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Blane
0 / 0 / 0
Регистрация: 10.04.2013
Сообщений: 15
#1

Копирование папки - C++

16.04.2013, 23:34. Просмотров 688. Ответов 4
Метки нет (Все метки)

Здравствуйте! Мне необходимо скопировать папку. Но каждый раз выдает ошибку "Невозможно выполнить циклическое копирование".

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
      
char way1[100]="C:\1\"; 
char way2[100]="";
char cpy[100]= "xcopy /e ";
char fin[100]= "";
      
strcpy (way2,way1);
strcat (way1,"* ");
strcat (way1,way2);
strcat (way1,"-копия\*");
strcpy (fin, cpy);
strcat (fin,way1);
system(fin);
По условию путь присылается извне, мне его надо использовать.
В чем проблема?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.04.2013, 23:34     Копирование папки
Посмотрите здесь:

Название папки проекта C++
C++ копирование
C++ Копирование
удаление папки C++
Создание папки в Linux C++
C++ Скрытые папки
C++ Создание папки
копирование C++
Проверка папки на пустоту C++
удаление папки C++
Получить название файлов с 1-ой папки , со 2-ой папки и вывести. Неправильный вывод C++
C++ Ввод адреса папки

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
anmartex
...
 Аватар для anmartex
1700 / 1193 / 494
Регистрация: 12.02.2013
Сообщений: 1,978
17.04.2013, 07:47     Копирование папки #2
Blane, так у вас получается именно циклическое копирование:
Код
xcopy /e C:\1\* C:\1\-копия\*
Т.е. взять всё содержимое из папки C:\1\ и скопировать туда же в папку копия. Улавливаете абсурд? Копируйте не в папку 1 а в какую-нибудь другую.
Blane
0 / 0 / 0
Регистрация: 10.04.2013
Сообщений: 15
17.04.2013, 10:25  [ТС]     Копирование папки #3
Цитата Сообщение от anmartex Посмотреть сообщение
Т.е. взять всё содержимое из папки C:\1\ и скопировать туда же в папку копия. Улавливаете абсурд? Копируйте не в папку 1 а в какую-нибудь другую.
От части понял ошибку) Должно копироватся не в папку "копия", а в папку "1-копия"... Лишний слеш после 1. Я его убрал, теперь выглядит так:
C#
1
xcopy /e C:\1\* C:\1-копия\*
Но всеравно выдает туже самую ошибку
anmartex
...
 Аватар для anmartex
1700 / 1193 / 494
Регистрация: 12.02.2013
Сообщений: 1,978
17.04.2013, 10:30     Копирование папки #4
Blane, ещё настораживает экранирование, должно быть так:
C
1
2
3
4
5
6
7
8
9
10
11
12
char way1[100]="C:\\1\\"; // Тут
char way2[100]="";
char cpy[100]= "xcopy /e ";
char fin[100]= "";
      
strcpy (way2,way1);
strcat (way1,"* ");
strcat (way1, way2);
strcat (way1,"-копия\\*"); // Тут
strcpy (fin, cpy);
strcat (fin, way1);
system(fin);
Blane
0 / 0 / 0
Регистрация: 10.04.2013
Сообщений: 15
17.04.2013, 11:05  [ТС]     Копирование папки #5
Цитата Сообщение от anmartex Посмотреть сообщение
Blane, ещё настораживает экранирование, должно быть так:
Да, спасибо! Так работает!
C#
1
xcopy /e C:\\1\\* C:\\1-копия\\*
Но получается возникла новая проблема) У меня начальный путь присылается... Поэтому заменить "\" на "\\" мне надо будет программно... Как можно это сделать?
Yandex
Объявления
17.04.2013, 11:05     Копирование папки
Ответ Создать тему
Опции темы

Текущее время: 08:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru