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

Копировать, перенести, удалить файлы в C++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Дана матрица размера MxN. Вывести ее элементы, расположенные в столбцах с нечетными номерами http://www.cyberforum.ru/cpp-beginners/thread812231.html
Дана матрица размера MxN. Вывести ее элементы, расположенные в столбцах с нечетными номерами (1, 3, …). Вывод элементов производить по столбцам, условный оператор не использовать. РАБОТА С ФУНКЦИЯМИ.. #include <stdio.h> #include <locale> #include <conio.h> #define MAX 10 int main (void)
C++ Цветной текст Помогите пожалуйста сделать вывод другим цветом всех чисел над диагональю в двумерном массиве int main(){ setlocale(LC_ALL,"Rus"); srand((unsigned)time(NULL)); int size, i, j; http://www.cyberforum.ru/cpp-beginners/thread812229.html
Нужно переделать код C++
Нужно сделать без классов: #include <iostream> #include <cstdlib> #include <ctime> class mylist { struct s { int data; s* next;
C++ Слить два упорядоченных массива в третий
помогите чутка,надо слить два массива в один и упорядочить,создал два упорядоченых массива а как ввести их значения в 3ий не пойму#include <iostream> const int n = 5; const int z = 10; using namespace std; void sort(int&,int&); int main(int argc,char **argv) { int *a,*b,*c,i;
C++ Получить новую матрицу путем сложения http://www.cyberforum.ru/cpp-beginners/thread812201.html
Получить новую матрицу путем сложения всех элементов данной матрицы с ее наименьшим по модулю элементом. РАБОТА С ФУНКЦИЯМИ.. #include <stdio.h> #include <math.h> #include <locale> #include <conio.h> #include <time.h> #define MAX 10
C++ Побитовые операции (подсчитать количество парных нулевых битов, расположенных строго между единичными) Как подсчитать кол-во парных нулевых битов, расположенных строго между единичными? подробнее

Показать сообщение отдельно
DruidCat
4 / 4 / 1
Регистрация: 15.12.2012
Сообщений: 31
18.03.2013, 22:43     Копировать, перенести, удалить файлы в C++
Здравствуйте ребята, я новичок в С++, и мне нужен ваш совет, как профессиональных программистов.
Я пишу консольную программу, которая на определенном этапе переносит файлы из одной папки в другую. Данную операцию я делаю с помощью команды:

Пример от балды написал файл text.txt лежащий на с:\ скопировать в c:\new\
C++
1
system ("COPY c:\text.txt c:\new\");//активируем команду копирования
а потом мне приходится удалять файл c:\text.txt, так как по задумке программа перемещает этот файл.
C++
1
system ("DEL c:\text.txt");//Удаление файла
Все ничего, но меня очень напрягают надписи в консоли о том, что скопирован один файл (результат копирования).
1) Можно ли убрать эту надпись, чтоб копирование происходило без вывода сообщения в консоль?
2) У меня возникает еще вопрос, а как можно переместить файл? Дело в том, что моя программа копирует и удаляет не только текстовые файлы, но и большие по размеру pdf файлы в большом количестве, и процесс копирования иногда затягивается на одну минуту. Какой есть механизм для переноса файлов?
3) Подскажите пожалуйста, как проверить, существует ли папка на жестком диске? Это мне нужно для того, что если этой папки нет, моя программа эту папку автоматически создала бы. Дело в том, что моя программа проверяет результат копирования файлов, она сначала физически проверяет, что файл скопировался, а потом удоляет.
C++
1
2
3
4
5
6
ifstream infile("c:\new\text.txt");//открываем поток чтения данных в файл
if ( ! infile.is_open() )//Проверка, если файл не открыт...
{
    infile.close();//закрываем поток чтения файла
    return 1;//Возвращение ошибки и вывод сообщения "Ошибка копирования файлов, не верный путь их размещения."
}
А вот как проверить существует ли папка, я не знаю, подскажите механизм проверки наличия папки.
4) Я видел кучу консольных программ, где, когда происходит копирование файла, или еще какой процесс, в одной строчке изменяется в процентах статус выполнения операции. Как это делается? Чтоб в одной и той же строчке в терминале шло какое то изменение (обновление). Я подумал, что такое возможно сделать при постоянной очистке терминала и выводе какого то изменения.
C++
1
2
3
4
5
for (unsigned int step=0; step<100; step++)
{
cout << "Процесс: "<<step<<"%"<<endl;
system ("CLS");
}
но этот вариант вата, так как удаляется результат работы программы до этого в терминале.
Подскажите пожалуйста лучший вариант.
PS: Прошу прощения за мои вопросу, если они вам покажутся примитивными, просто я начинающий и многого не знаю.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru