Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 08.04.2013
Сообщений: 12
1

Перемещение всех файлов в указанный каталог из подкаталогов

08.04.2013, 07:51. Показов 2968. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста в написании кода, разработать программу, которая перемещает все файлы в указанный пользователем каталог все файлы из его подкаталогов. Данный код выдает ошибку

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#include <iostream>
#include <windows.h>
 
#include <dir.h>
using namespace std;
main(){
HANDLE CreateFile (
   LPCTSTR FileName,  
   DWORD Access,      
   DWORD Sharing,     
   LPSECURITY_ATTRIBUTES Attrib,
   DWORD CreationDistr, 
   DWORD Flags,
   HANDLE Template);    
 
 
BOOL GetFileInformationByHandle (
   HANDLE File,
   LPBY_HANDLE_FILE_INFORMATION);   
 
BOOL ReadFile (
   HANDLE File,
   LPVOID Buf, 
   DWORD BytesToRead,     
   LPDWORD BytesRead,     
   LPOVERLAPPED Overlap); 
 
BOOL WriteFile (
   HANDLE File,            
   LPVOID Buf, 
   DWORD BytesToWrite,     
   LPDWORD BytesWriten,    
   LPOVERLAPPED Overlap);  
 
HANDLE In, Out;
In = CreateFile ("File.txt", GENERIC_READ, 0, NULL,
                 OPEN_EXISTING, 0, NULL);
Out = CreateFile ("Output.txt", GENERIC_WRITE, 0, NULL,CREATE_ALLWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
BOOL Finished;
 
do {
   Finished = ReadFile (In, Buffer, BufferSize, &NumOfRead,NULL);
   if (Finished && NumOfRead > 0)
      WriteFile (Out, Buffer, NumOfRead, &NumOfWriten, NULL);
} while (Finished > 0 && NumOfRead > 0);
 
CloseHandle (In);
CloseHandle (Out);
 
BOOL CopyFile(
   LPCTSTR ExistingFileName, 
   LPCTSTR NewFileName,      
   BOOL bFailIfExists);    
CopyFile("c:\\oldfile.exe", "c:\\newfile.exe", FALSE);
 
BOOL MoveFile(
   LPCTSTR ExistingFileName, 
   LPCTSTR NewFileName);    
BOOL DeleteFile(
   LPCTSTR ExistingFileName); 
 
 
MoveFile("c:\\tmp\\oldfile.txt", "c:\\newfile.txt");
DeleteFile ("c:\\tmp\\oldfile.txt");
 
DWORD SetFilePointer(
   HANDLE File,           
   LONG BytesToMove, 
   PLONG DistanceToMoveHigh, 
   DWORD dwMoveMethod);       
   
 
SetFilePointer (File, BytesToRead, 0, FILE_BEGIN);
 
BOOL CreateDirectory (
   LPCTSTR PathName,                           
   LPSECURITY_ATTRIBUTES lpSecurityAttributes); 
     
 
BOOL RemoveDirectory (
   LPCTSTR lpPathName); 
if (RemoveDirectory("c:\\new")) printf ("Cataloge deleted\n");
 
DWORD GetCurrentDirectory (
   DWORD BufferLength,  
   LPTSTR Buffer);      
BOOL SetCurrentDirectory (
   LPCTSTR PathName);   
 
GetCurrentDirectory (sizeof (buffer), buffer);
printf ("%s\n", buffer);
 
SetCurrentDirectory ("D:\\");
GetCurrentDirectory (sizeof (buffer), buffer);
printf ("%s\n", buffer);
 
HANDLE FindFirstFile (
   LPCTSTR FileName, 
   LPWIN32_FIND_DATA FindData); 
      
 
BOOL FindNextFile (
   HANDLE FindFile,  
   LPWIN32_FIND_DATA FindData);  
 
WIN32_FIND_DATA FindData;
HANDLE MyFile;
 
MyFile = FindFirstFile ("d:\\*.*", &FindData);
if (MyFile != INVALID_HANDLE_VALUE) {
   do {
       printf ("%s\n", FindData.cFileName;
      } while (FindNextFile (MyFile, &FindData));
   FindClose (MyFile);
}
 
 
BOOL FindClose (
   HANDLE FindFile);  
 
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.04.2013, 07:51
Ответы с готовыми решениями:

Копирование каталога с сетевого диска в каталог на локальном диске с заменой всех подкаталогов и файлов
Dragokas, здравствуйте, помогите моей проблеме, поиски решений пока ни к чему не привели, может...

Переместить все файлы из всех подкаталогов в текущий каталог и удалить подкаталоги, если у них нет своих подкаталогов
Переместить все файлы из всех подкаталогов в текущий каталог и удалить подкаталоги, если у них нет...

Копирование из текущего каталога всех файлов с расширением .txt, кроме одного указанного, в указанный каталог
Очень нужна помощь в написании бат файла или даже в исправлении. ниже задание и код,но нужно чтобы...

Создание подкаталогов и перемещение туда файлов
Здравствуйте, возникла проблема с лабой, вообще не понимаю как это делать. Помогите пожалуйста. Вот...

6
Эксперт С++
3953 / 1808 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
08.04.2013, 10:45 2
NasenYerlan, а зачем вы пробуете описать прототипы стандартных WinAPI функций, да ещё и внутри main? Копипаст? Уберите лишнее и будет счастье
0
0 / 0 / 0
Регистрация: 08.04.2013
Сообщений: 12
08.04.2013, 20:38  [ТС] 3
какие именно? я просто в срр начинающий, помогите плиз
0
0 / 0 / 0
Регистрация: 08.04.2013
Сообщений: 12
14.04.2013, 11:17  [ТС] 4
надо образовать логин пароль вход без базы данных, только по lineEdit
0
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
14.04.2013, 18:00 5
NasenYerlan,

вот как перемещать

C++
1
2
3
4
5
#include <windows.h>
//...
MoveFile("С:\\1\\1.txt", "С:\\2\\1.txt");
MoveFile("С:\\1\\2.txt", "С:\\2\\2.txt");
//....
0
LK
Заблокирован
22.04.2013, 08:19 6
Функция MoveFile
0
0 / 0 / 0
Регистрация: 08.04.2013
Сообщений: 12
22.04.2013, 22:43  [ТС] 7
помогите, Задача такая , разработать программу, которая перемещает все файлы в указанный пользователем каталог файлов из его подкаталогов. Данный код, перемещает только один файл... и плиз, напишите полный код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <windows.h>
#include <cstring>
using namespace std;
main() {
       string a,b;
       tryA: cout<<"enter a file: ";
       cin>>a;
       cout<<"enter a file and new name: ";
       cin>>b;
       
    
    
      BOOL c = MoveFile(a.c_str(), b.c_str());
      if (!c) {
         cout << "Error: " << GetLastError() << endl;} 
      else {
           cout << "ok, it's moved" << endl;
            DeleteFile (a.c_str());
           }
           
    
     system("pause");
 
 
     }
0
22.04.2013, 22:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.04.2013, 22:43
Помогаю со студенческими работами здесь

Robocopy перемещение файлов и подкаталогов кроме определенных
Здравствуйте! Есть папка 1 с подкаталогами (сетевая папка) Есть папка 2 с подгаталогами (тоже...

Переместить все файлы из всех подкаталогов в текущий каталог и удалить пустые подкаталоги
Переместить все файлы из всех подкаталогов в текущий каталог и удалить подкаталоги, если у них нет...

Пользователь вводит каталог и надо узнать в нём размер всех каталогов и подкаталогов
Всем привет!Мужики спасайте. Есть такая задачка. Пользователь вводит каталог и надо узнать в нём...

Удаление из всех подкаталогов заданного каталога, включая вложенные, всех FGI-файлов размером не более 27 Кб
Задача - в C:\folders\ много поддиректорий, автоматически создаются файлы различные графические, и...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru