powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / папка это файл?
5 сообщений из 230, страница 10 из 10
папка это файл?
    #39997823
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov

andron81это ж в каком состоянии надо быть чтобы так опечататься ?

Да, в общем-то, в типичном для тех времён. "На весь мир требуется не более полудюжины
компьютеров."


хочешь сказать там опечатка ?

тогда как тут должен выглядеть тут код ?
...
Рейтинг: 0 / 0
папка это файл?
    #39997825
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andron81хочешь сказать там опечатка ?

Я хочу сказать, что этот код был способен работать на единственной версии единственной
операционки, установленной на единственном компьютере.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
папка это файл?
    #39997835
а как тогда этот код попал в 2020?

тьфу, из книжки штоле?!
да сколько можно уже
YouTube Video
...
Рейтинг: 0 / 0
папка это файл?
    #39997923
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
финдфирстом / финднекстом удалось сделать !

на обычных папках всё верно, а вот на папках типа Windows и Program Files получается неверно...
га*нокод мой таков :

Код: plaintext
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.
#define _CRT_SECURE_NO_WARNINGS 1
#define MAX_PATH_LENGTH  64*1024
#define MAX_CURRENT_FOLDER_LENGTH  1024
#include "windows.h"
#include <stdio.h>

char dir[MAX_PATH_LENGTH] = "";
int fileQty = 0;
long long folderSize = 0;

void walkDir(char *Dir, int deep){
    char currentDirName[MAX_CURRENT_FOLDER_LENGTH] = "";
    int cutX = 0;
    int folder_is_end = 555; //если дошли до конца , то 0, а сначала не дошли (555)
    if (strlen(dir)==0) strcpy(dir, Dir);
    strcat(dir, "*");
    WIN32_FIND_DATA FindFileData;
    HANDLE hf;
    hf = FindFirstFileA(dir, &FindFileData);
    if (hf != INVALID_HANDLE_VALUE) {
        while (folder_is_end != 0) {
            while ((folder_is_end = FindNextFileA(hf, &FindFileData)) != 0) {
                if (strcmp(FindFileData.cFileName, ".") == 0 || strcmp(FindFileData.cFileName, "..") == 0) continue;
                if (FindFileData.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY) break;
                //printf("%s \n", FindFileData.cFileName);
                fileQty++;
                folderSize = folderSize + FindFileData.nFileSizeLow;
            }
            if (folder_is_end != 0) {
                dir[strlen(dir) - 1] = '\0'; //убираем звездочку справа
                strcpy(currentDirName, FindFileData.cFileName);
                strcat(dir, currentDirName);
                strcat(dir, "/");
                walkDir(dir,deep+1);
                dir[strlen(dir) - 1] = '\0'; //убираем звездочку справа
                dir[strlen(dir) - 1] = '\0'; //и слеш
                cutX = strlen(dir) - strlen(currentDirName) ;
                dir[cutX] = '\0'; 
                strcat(dir, "*");
            }
        }
    } 
 }

int main(int argc, char* argv[]){
    walkDir("C:/windows/",0);
    printf("Number of files: %d\n", fileQty);
    printf("Total size: %d\n", folderSize);
}
...
Рейтинг: 0 / 0
папка это файл?
    #40002821
andron81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
закрывай!
...
Рейтинг: 0 / 0
5 сообщений из 230, страница 10 из 10
Форумы / C++ [игнор отключен] [закрыт для гостей] / папка это файл?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]