Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Создать в каталоге, 35 подкаталогов с именами лат. алфавита и 0-9 [D2005, XP]


Страницы:   1 2

Леонид Артюхов ©   (2009-12-02 19:16:00) 

Всем привет,

Доброго времени суток, Уважаемые Мастера!

В своей ежедневной работе и так сказать ИТ жизни, сталкиваюсь с такой необходимостью, как каталогизирование различного софта и т д

Так вот, решил написать микро-утилиту, чтобы в один клик создавала в указанном каталоге, подкаталоги с именами от a...9. То есть теперь сам вопрос, не подскажите ли Вы Многоуважаемые, как создать такой Алгоритм (функцию)? подкаталоги должны быть в латинском алфавите и с именами: a,b,c,d,e,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,0,1,2,3,4,5,6,7,8,9.

C Уважением, Леонид!


Наиль   (2009-12-05 23:49:00) [1]

Когда все папки уже есть, но ещё пусты я их закатываю Rar'ом в SFX-архив в режиме тихой распаковки.
Т.е. при распаковке не показываются окна и происходит автоматическая замена файлов существующих файлов.
Правда, у меня и названия подлинее и папок поменьше.
Поэтому папки я создаю вручную.
Этот метод особено удобен, когда нужно заменить десяток из тысячи файлов раскиданых по разным папкам на множестве компьютеров.
Повторяется структура папок оригинала, по папкам раскладываютя файлы, которые нужно заменить.
Делается SFX, который запускается на разных компьютерах.
Самый удобный способ для подобной задачи.
А что касается примера из [21], то exe-файл получается меньше размером, чем из Delphi.


Дмитрий С   (2009-12-04 06:37:00) [2]

for c:=#0 to #255 do if c in ['a'..'z','0'..'9'] then CreateDir('C:\Test\' +c);


Леонид Артюхов   (2009-12-04 06:21:00) [3]

var
 CharsArray: array[1..36] of Char;
 i: integer;
begin
   CharsArray := 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
   for i := 1 to 36 do
   CreateDir('C:\Test\' + CharsArray[I]);
end;

Все получилось, спс еще раз Всем!


brother   (2009-12-04 04:25:00) [4]

> В итоге заюзал батник :)

+5 !)


Леонид Артюхов   (2009-12-03 20:07:00) [5]

Всем Огромное Спасибо!
Попробовал все ваши варианты, акромя массива, не смог передать его в функцию!
В итоге заюзал батник :)


RWolf   (2009-12-03 09:55:00) [6]

Макрос для Far, создаёт папки от a до z:

%ch="a";
$While (asc(%ch)<=asc("z"))
 F7
 $Text %ch
 %ch=chr(asc(%ch)+1);
 Enter
$End


Anatoly Podgoretsky   (2009-12-03 09:30:00) [7]

> Sergey13  (03.12.2009 09:01:15)  [15]

Но нет 35ти каталоговых.


brother   (2009-12-03 09:17:00) [8]

> Изыди проклятый

не любите bat файлы?

> А ты порядок знаешь?

а то)


Sergey13   (2009-12-03 09:01:00) [9]

> [0] Леонид Артюхов   (02.12.09 19:16)

Не очень понятна сама идея - как создание 35 папок поможет в великом деле каталогизации софта.
При том что существует великое множество готовых каталогизаторов.


Anatoly Podgoretsky   (2009-12-03 08:51:00) [10]

> brother  (03.12.2009 05:58:11)  [11]

А ты порядок знаешь?


Anatoly Podgoretsky   (2009-12-03 08:50:00) [11]

> brother  (03.12.2009 05:57:10)  [10]

Изыди проклятый


brother   (2009-12-03 06:00:00) [12]

ну, или так:
@ECHO OFF
FOR %%i IN (q w e r t y u i o p a s d f g h j k l z x c v b n m 0 1 2 3 4 5 6 7 8 9) DO  mkdir %%i
pause

удачи!


brother   (2009-12-03 05:58:00) [13]

> (q w e r t y u i o p a s d f g h j k l z x c v b n m)

лень было по порядку набирать)))))))))


brother   (2009-12-03 05:57:00) [14]

для таких вещей можно использовать .BAT файл с содержанием:
@ECHO OFF
FOR /l %%i IN (0,1,9) DO mkdir %%i
FOR %%i IN (q w e r t y u i o p a s d f g h j k l z x c v b n m) DO  mkdir %%i
pause

зы и никакого делфи ;)


Германн   (2009-12-03 01:46:00) [15]


> Leonid Troyanovsky ©   (02.12.09 23:32) [7]
>
>
> > Леонид Артюхов   (02.12.09 19:16)
>
> > 0,1,2,3,4,5,6,7,8,9
>
> Оно ж не лат., бо арабские.
>

Крамер против Крамера.
:)


Юрий Зотов   (2009-12-03 00:07:00) [16]

> antonn ©   (02.12.09 19:39) [5]

procedure CreateDir(DirName: string);
...
end;

var
 i: char;
begin
 for i := '0' to '9' do
   CreateDir(i);
 for i := 'a' to 'z' do
   CreateDir(i);
end;


Leonid Troyanovsky   (2009-12-02 23:32:00) [17]


> Леонид Артюхов   (02.12.09 19:16)

> 0,1,2,3,4,5,6,7,8,9

Оно ж не лат., бо арабские.

--
Regards, LVT.


DVM   (2009-12-02 19:53:00) [18]

С массивом имхо и нагляднее и удобнее. И пропускать буквы можно если надо.


antonn   (2009-12-02 19:39:00) [19]


> Фу какая глупость.
>
> for I := 'a' to 'z'
>

дальше, дальше где код? :)


Anatoly Podgoretsky   (2009-12-02 19:32:00) [20]

> antonn  (02.12.2009 19:21:02)  [2]

Фу какая глупость.

for I := 'a' to 'z'


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо