Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.10.25;
Скачать: CL | DM;

Вниз

Сохранение в ini   Найти похожие ветки 

 
DimDim   (2009-08-19 18:21) [0]

350 переменных сохраняет в ini-файл примерно 5 секунд. Это нормально? Как-то хочется побыстрее...
   IniKf := TIniFile.Create(NameIniFile);
   IniKf.WriteInteger("Glavn", "XXX", XXX);
   ....
   IniKf.Free;

Переменные разные: Doolean, Float, Integer ...
Компьютер 2,2 ГГц, 1Гб ОЗУ. "Чистый" (без вирусов).


 
Palladin ©   (2009-08-19 18:22) [1]

что же сподвигло тебя на сий подвиг?


 
Медвежонок Пятачок ©   (2009-08-19 18:32) [2]

Это потому, что переменная названа неправильно  - "NameIniFile"

Надо "IniFileName". Будет реально быстрее.


 
vip77   (2009-08-19 18:35) [3]


> 350 переменных


ужос!!!


 
Медвежонок Пятачок ©   (2009-08-19 18:35) [4]

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


 
Palladin ©   (2009-08-19 18:43) [5]

А мне тип Doolean понравился :) Поди из Челябинска родом ))


 
DimDim   (2009-08-19 18:51) [6]

Грешно глумиться над убогим...
Сметная программа. На наждую смету мильон настроек. До этого сохранял в таблице базы данных. Но это очень муторно если надо еще что нибудь добавить - приходится менять структуру таблиц, следить за значениями по умолчанию. Причем это должно проверяться и происходить у заказчиков автоматически при обновлении программы, т.к. их много (около 500 раб. мест - за каждым не уследишь).
Решил переделать - сохранять настройки в ini-файл, а его переписывать как текст в Memo поле базы. Также и открывать - переписать из Memo в ini, а из ini читать в программу. Так ведь такими темпами только процедура перезаписи наработанной базы в новый вариант пол дня займет.


 
Медвежонок Пятачок ©   (2009-08-19 18:52) [7]

посторочная трассировка + геттиккаунт подскажут правду на чем именно тратится время


 
Медвежонок Пятачок ©   (2009-08-19 18:58) [8]

Но это очень муторно если надо еще что нибудь добавить - приходится менять структуру таблиц, следить за значениями по умолчанию

xml плюс xpath минус куча кода чтения/записи каждой переменной отдельно.


 
Leonid Troyanovsky ©   (2009-08-19 18:59) [9]


> Palladin ©   (19.08.09 18:43) [5]

А чего, если понравился - то сразу из Челябинска?

Оный тип широко известен еще со времен доса,
хотя его формат иногда и скрывают
(скажем, в кармане, может кто и помнит такое :)

--
Regards, LVT.


 
antonn ©   (2009-08-19 19:31) [10]


> DimDim   (19.08.09 18:21)
>
> 350 переменных сохраняет в ini-файл примерно 5 секунд. Это
> нормально?

ну вероятно при каждом сохранении он читает файл заново и ищет нет ли в нем уже созданой секции и ключа :)
Если нужно сохранить значения в уже созданый файл (и в котором могут быть незатрагиваемые ключи), то попробуй TMemIniFile
Если в файле только эти 350 переменных - формируй ручками структуру ini в TStrings и потом сохраняй его в файл


 
Anatoly Podgoretsky ©   (2009-08-19 20:48) [11]

> DimDim  (19.08.2009 18:51:06)  [6]

База нужна, только боюсь, что ты там больше делов натворишь, есть где размахнуться.


 
Loginov Dmitry ©   (2009-08-19 22:43) [12]

> 350 переменных сохраняет в ini-файл примерно 5 секунд. Это
> нормально? Как-то хочется побыстрее...


Антивирь скорее всего тормозит. Выключи его, или добавь
iniшку в игнор-лист.


 
Kolan ©   (2009-08-19 23:15) [13]

Надо было таблицу в базе делать из двух полей: Key и Value оба текстового типа.


 
DimDim   (2009-08-20 14:54) [14]

Спасибо всем. Через TMemIniFile работает на ура.
Про xml плюс xpath думал, но нет времени на изучение формата...


 
Плохиш ©   (2009-08-20 16:02) [15]


> DimDim   (19.08.09 18:51) [6]
>
> Грешно глумиться над убогим...
> Сметная программа. На наждую смету мильон настроек. До этого
> сохранял в таблице базы данных. Но это очень муторно если
> надо еще что нибудь добавить - приходится менять структуру
> таблиц


Зачем?

> Kolan ©   (19.08.09 23:15) [13]
>
> Надо было таблицу в базе делать из двух полей: Key и Value
> оба текстового типа.

+ idSmeta - integer ;-)


 
Дмитрий Белькевич   (2009-08-22 19:29) [16]

Вместо постоянной смены структуры сделать поле Text BLOB, в стрнглист помещать пары Parameter=Value, text в стринглист при старте читать из BLOB"а, при оставке - запихивать в блоб. Параметров можно сделать хоть мульён ничего мянятся и тормозить не будет, и инишка не нужна.



Страницы: 1 вся ветка

Текущий архив: 2009.10.25;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.021 c
1-1222031699
Д С
2008-09-22 01:14
2009.10.25
Событие показа формы.


15-1250350837
Внук
2009-08-15 19:40
2009.10.25
Я сделал это!


6-1208020460
Dima
2008-04-12 21:14
2009.10.25
Фильтрация Http заголовка и обеспечение целостности


15-1250969752
Gordom
2009-08-22 23:35
2009.10.25
Обновление Adobe Flash


2-1251446645
TarenoKostanay
2009-08-28 12:04
2009.10.25
Дескриптор окна