Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 10.10.2011, 10:55
Source Source вне форума
Прохожий
 
Регистрация: 16.02.2010
Сообщения: 12
Репутация: 101
По умолчанию Динамическое создание и использование ini файлов

В общем идея такая:
При запуске программы мы "создаем" все нужные ини файлы (т.е. читаем например из какого-нибудь 1 файла какие ини файлы нам будут нужны, TIniFile.Create(....)....). Создать то не проблема, проблема в другом... Как их потом использовать ? Точное кол-во файлов не известно (их может быть и 1 и 10) так что самому прописать не получится. Думал использовать ассоциативные массивы но в дельфи нет того, что мне нужно (например можно было бы сделать ключ - имя файла, значение - TIniFile (созданный)). Не подскажите как это лучше будет сделать ?
Ответить с цитированием
  #2  
Старый 10.10.2011, 11:35
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

Динамические массивы?
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием
  #3  
Старый 10.10.2011, 12:01
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

Можно сделать сложные имена ключей, или секций, и все в одном ини
[one.abc]
val1 = ...
val2 = ...
[one.two.abc]
val1 = ...
val2 = ...
Ответить с цитированием
  #4  
Старый 10.10.2011, 12:38
Аватар для Viajero
Viajero Viajero вне форума
Активный
 
Регистрация: 14.06.2011
Адрес: РБ
Сообщения: 214
Версия Delphi: Delphi 7 FB 2.5
Репутация: 5849
По умолчанию

Что то похожее...
Код:
procedure TwMain.fRestoreFiles(); {Восстановление карточек (описания хранятся в *.ini)}
var    
  rSea:integer;
  sType:string;
  sActiveCard:string;
  sForm:string;
begin
  sActiveCard:=stEmpty;
  dirspecCard:=CurrentDir + '\Data\Cards\*.*';
  rsea:=findfirst(dirspecCard,(faAnyFile-faDirectory),flsea);
  while rSea=0 do
    begin
      filespecCard:=CurrentDir + '\Data\Cards\'+flsea.Name;
      flCard:= TIniFile.Create(filespecCard);    {создание файла карты как ini файла}
      sForm:=flCard.ReadString('Description', 'Form','None' );
      if  sForm='Card' then begin
        sType:=flCard.ReadString('Description', 'Type','None');
        if sType='Active' then begin  {восстановление активных карточек}
          sActiveCard:=filespecCard;
        end;
        if sType='Noactive' then fRestoreCard(filespecCard); {восстановление неактивных карточек}
      end;
      flCard.Free;
      rSea:=findnext(flsea);
   end;
   if sActiveCard <> stEmpty then  fRestoreCard(sActiveCard);
end;
__________________
- Товарищ прапорщик!!! Остановите поезд!!! - Поезд СТОЙ! РАЗ! ДВА!

Последний раз редактировалось Viajero, 10.10.2011 в 12:47.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:18.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025