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

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

Как в ini-файле сдвинуть секцию вверх или вниз? [D7, WinXP]


Страницы:   1 2 3 4

Гость ©   (2010-08-16 08:45:00) 

Имеется в виду работа через TIniFile.


antonn   (2010-08-23 20:36:00) [21]


> которое ни на что в программе не влияет.

не все что используется в программе нужно только самой программе.
[7]

"двоичность" в теме зашкаливает :(


Palladin   (2010-08-23 18:29:00) [22]

И вся эта бодяга, вся эта ветка уже неделю длится, из-за глупого желания странного, которое ни на что в программе не влияет.


> Вы бы сами стали после такого как [20] делиться кодом?

поверь, никому тут твой код нафик не обкакался... ппц... он обиделся и не стал делится "вселенской мудростью" с другими... хоть в орешник...


Сергей М.   (2010-08-23 18:07:00) [23]


> способ решить проблему тормознутости


Не упираться в TIniFile, а использовать TMemIniFile - он работает с данными в ini-формате в памяти приложения, при необходимости разом выплевывая  готовое в файл, что ощутимо быстрее выплевывания кусками, как это делает TIniFile.


Плохиш   (2010-08-23 17:50:00) [24]


> Гость   (23.08.10 12:22) [28]


> У меня 3.26 секунд. Core2Duo.

VirtualBox na e6300 - 0,05 sek.
Ваш винчестер пора на помойку, т.к. скорость обработки tinifile на 90% зависит от его быстродействия.

> Знает ли кто-нибудь способ решить проблему тормознутости
> ini-файла?

Надо поменять прокладку.

PS. Хотя смысл отвечать, вы всё-равно ответов не читаете или не понимаете.


Anatoly Podgoretsky   (2010-08-23 15:08:00) [25]

> Германн  (23.08.2010 15:00:36)  [36]

То есть хочешь сказать, что все это порнография.


Германн   (2010-08-23 15:00:00) [26]


> Кстати, и скорость работы с файлом (который, как правило,
>  читается и пишется максимум несколько раз за сеанс), безусловно,
>  крайне важна.

Зато у TIniFile есть куча готовых методов, в отличие от всех прочих файлов. Так почему бы не приспособить его для чтения/записи чего-нибудь другого? Например фоток любимых девушек. :) А судя по вопросу к чему-то такому дело и идет.


Anatoly Podgoretsky   (2010-08-23 14:45:00) [27]

> Юрий Зотов  (23.08.2010 14:39:34)  [34]

Тут наверно стоит использовать i7


Юрий Зотов   (2010-08-23 14:39:00) [28]

Кстати, и скорость работы с файлом (который, как правило, читается и пишется максимум несколько раз за сеанс), безусловно, крайне важна. Особенно, при Core2Duo (хотя лимитирует, конечно, диск, а не процессор).


Юрий Зотов   (2010-08-23 13:00:00) [29]


> Гость   (23.08.10 12:22) [28]
> Вы бы сами стали после такого как [20] делиться кодом?

Я бы не стал, ни за что на свете. И до [20], и после [20], и даже если бы [20] вообще не было - все равно не стал бы.

Как же так? Я мучился, рожал сложнейший код работы с ini-файлом, аж целую неделю на него потратил - и вдруг поделиться. Да ни за что!

LOL !


Игорь Шевченко   (2010-08-23 12:49:00) [30]

Ini-файлы не надо тестировать на скорость - они работают заведомо медленно


12   (2010-08-23 12:43:00) [31]

1,5 сек


RWolf   (2010-08-23 12:36:00) [32]


> Гость   (23.08.10 12:22) [28]


> У меня 3.26 секунд. Core2Duo.

0,016 секунд; Athlon 3000+, WinXP.


Anatoly Podgoretsky   (2010-08-23 12:27:00) [33]


> Вы бы сами стали после такого как [20] делиться кодом?

Что значит делиться, никому твой код не нужен, кроме тебя самого.


Гость   (2010-08-23 12:22:00) [34]


> brother ©   (20.08.10 07:22) [26]
>
> нечему там подвисать! код показывай!


Вы бы сами стали после такого как [20] делиться кодом?

* * *

В общем проблема в скорости записи в ini-файл. Вот простой тест:

function WriteIniTest() : Boolean;
var
 i1, j1 : Integer;
 AppIni : TIniFile;
 TimerA : Cardinal;
begin
 TimerA := GetTickCount;
 AppIni := TIniFile.Create('test.ini');
 try
   for i1 := 0 to 10 do begin
     for j1 := 0 to 15 do begin
       AppIni.WriteString('Asdfasdfasdf' +IntToStr(I1), 'Asdfasdfasdf' +IntToStr(J1), 'Asdfasdfasdf');
     end;
   end;
 finally
   AppIni.Free;
 end;
 ShowMessage(Format('%.3f sec.', [(GetTickCount -TimerA) / 1000]))
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 WriteIniTest();
end;


У меня 3.26 секунд. Core2Duo.

Знает ли кто-нибудь способ решить проблему тормознутости ini-файла?


Anatoly Podgoretsky   (2010-08-20 10:14:00) [35]


> Но запись параметров по одному - чудовищно тормозная. Даже
> когда параметров мало, то комп. немного подвисает. Почему
> так - не знаю.

Наверно потому, что так написал.


brother   (2010-08-20 07:22:00) [36]

нечему там подвисать! код показывай!


Гость   (2010-08-20 07:06:00) [37]

Написал себе эту функцию. Но запись параметров по одному - чудовищно тормозная. Даже когда параметров мало, то комп. немного подвисает. Почему так - не знаю.


ixen   (2010-08-18 07:25:00) [38]

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


Плохиш   (2010-08-17 20:20:00) [39]

Ну хоть бы кто-нибуть посоветовал сантехнику тмеминифайл :-))


RWolf   (2010-08-17 09:27:00) [40]


> 12 ©   (16.08.10 13:19) [10]


Если редактировать ini правильными редакторами (FAR, например), к любой его секции можно перейти парой нажатий клавиш.


Страницы:   1 2 3 4

Наверх

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