Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.10.25;
Скачать: [xml.tar.bz2];

Вниз

Сохранение в 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.041 c
8-1198524383
XeON
2007-12-24 22:26
2009.10.25
Вырезать часть картинки


2-1251666355
wah
2009-08-31 01:05
2009.10.25
Многострочность и StringGrid


15-1251457955
TUser
2009-08-28 15:12
2009.10.25
Законы физики нарушаются


2-1251176475
id_984fa940
2009-08-25 09:01
2009.10.25
Проблема с очисткой компонента типа TValueListEditor


2-1251291344
Alexey
2009-08-26 16:55
2009.10.25
Удаление элемента из динамического массива





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский