Официальный сайт студ.городка НГТУ
Программирование и БД » [C++]Как создать структуру вложенных папок? 

#1  31.05.09 19:35

[C++]Как создать структуру вложенных папок?

Есть структура вложенных НЕСУЩЕСТВУЮЩИХ папок, например "D:/a/b/c/d/e".
Как наиболее быстро и удобно ее создать?
CreateDirrectory(); создает только 1 папку(

Offline

#2  31.05.09 23:14

Re: [C++]Как создать структуру вложенных папок?

R0mm, сделай рекурсивную функцию :)

Offline

#3  31.05.09 23:32

Re: [C++]Как создать структуру вложенных папок?

Jaguar, С прошедшим)
Ну это уже выкручивание.. хотелось бы так: раз, и все готово)

Offline

#4  01.06.09 21:13

Re: [C++]Как создать структуру вложенных папок?

ап

Offline

#5  01.06.09 21:50

Re: [C++]Как создать структуру вложенных папок?

чем тебе рекурсия не нравится?

Offline

#6  01.06.09 22:36

Re: [C++]Как создать структуру вложенных папок?

можно так))

Код::

mkdir -p /a/b/c/d/e

Offline

#7  01.06.09 22:37

Re: [C++]Как создать структуру вложенных папок?

JONIK, ты тему смотри... C++

Offline

#8  01.06.09 22:43

Re: [C++]Как создать структуру вложенных папок?

R0mm написал(а):

Есть структура вложенных НЕСУЩЕСТВУЮЩИХ папок, например "D:/a/b/c/d/e".

давай подумаем... как у тебя выглядет эта структура? дерево объектов? как ты вообще это представляешь? как оно должно использоваться?

Offline

#9  01.06.09 23:12

Re: [C++]Как создать структуру вложенных папок?

чем вам mkdir не понравился?)

Код: c:

#include <unistd.h>
int main(void) {
  char *arg[] = {"mkdir","a","a/b","a/b/c","a/b/c/d"};
  if (fork() == 0) {
    execvp(arg[0],arg);
  }
  return 0;
}

Offline

#10  01.06.09 23:20

Re: [C++]Как создать структуру вложенных папок?

Jaguar, вообще есть просто путь. хранится как строка в char[]="D:/a/b/c/d/e"

Offline

#11  01.06.09 23:34

Re: [C++]Как создать структуру вложенных папок?

LLlypka, для вложенности в 255 папок тож расписывать будешь?

R0mm, ну тут просто напрашивается рекурсия... отсекаешь "последнюю" папку, делаешь проверку на существование "родительской" папки... если нет, тогда выполнить эту же функцию к "родительской"... после создать "последнюю" папку... делается быстро и без заморочек...

Offline

#12  02.06.09 00:12

Re: [C++]Как создать структуру вложенных папок?

Jaguar, нет, не буду, путь уже есть и есть аргумент parents у mkdir
не лучше ли использовать интерфейс posix (fork,exec) всместо виндового (CreateDirrectory) ?

Offline

#13  02.06.09 00:16

Re: [C++]Как создать структуру вложенных папок?

Jaguar, подскажи как проверить существование директории!

Offline

#14  02.06.09 13:18

Re: [C++]Как создать структуру вложенных папок?

R0mm,  под вЫнью как-то так:

Код: c++:

BOOL DirectoryExists(const char* dirName)
{
DWORD attribs = ::GetFileAttributesA(dirName);
if (attribs == INVALID_FILE_ATTRIBUTES) {
return false;
}
return (attribs & FILE_ATTRIBUTE_DIRECTORY);
}

Исправлено Jaguar (02.06.09 13:19)

Offline

Программирование и БД » [C++]Как создать структуру вложенных папок? 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.323 сек.
Выполнено 14 запросов.