Форма входа

Категории раздела

Мои файлы [12]
Полезности [15]

Поиск

Наш опрос

Оцените мой сайт
Всего ответов: 62

Статистика


Онлайн всего: 1
Гостей: 1
Пользователей: 0




Понедельник, 25.11.2024, 08:30
Приветствую Вас Гость | RSS

Delphiport.ucoz.com

Главная | Регистрация | Вход
Полезные советы


Главная » Файлы » Мои файлы

Работа с ini файлами в Delphi
03.11.2011, 01:24

  При при написании программ оперирующих например какими нибудь рассчетами, иногда требуется сохранять настройки, чтобы после очередного

запуска приложения не вводить их вновь. Здесь как раз и приходят на выручку ini файлы.                                                                                                        

Для того чтобы понять как с ними работать, проделаем следующее...

 1) Пропишем в разделе Uses редактора кода - IniFiles, тем самым подключив модуль для работы с ними;

 2) Создадим глобальные переменные записав после раздела var   a:Tinifile; и b:Real;

 3) В событии FormCreate прописываем:

begin

a:=Tinifile.Create('C:/Delphi.ini');

end;

  Здесь С:/ - адрес создания файла ini, а Delphi.ini - имя и расширение файла, который если создан, то будет открыт, а если отсутствует, то будет

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

обнаружите его по указанному адресу.

  Теперь давайте попробуем записать в Edit1 любое число скажем 5 и по нажатии на Button поместить его в наш Delphi.ini, для этого:

 4) Поместим их на форму и в событии OnClick Button1 прописываем:

begin

a.WriteFloat('Секция1', 'переменная1', StrToFloat(Edit1.Text)); 

end;

 Если мы зайдем на С:/ и откроем с помощью Блокнота созданный нами ini файл, то увидим буквально следующее:

[Секция1]

Переменная1=5 

  Запишем теперь в ini какой нибудь текст например Delphiport.ucoz.com, для этого:

  5) Поместим на форму Edit2, Button2  и в событии OnClick Button2 пропишем:

begin

a.WriteString('Секция2', 'переменная2', Edit1.Text);

end;

  Пишем в Edit2 - Delphiport.ucoz.com, нажимаем на Button2, открываем наш ini снова и видим, что под первой секцией добавилась и вторая.

[Секция1]

Переменная1=5

[Секция2]

Переменная2=Delphiport.ucoz.com

В таком виде, инифайл распределяет и хранит информацию.

Давайте теперь научимся выгружать наши данные из Delphi.ini  

  6) Для этого кидаем на форму Edit3 - в него мы будем выводить данные, и Button3 на котором мы создадим обработчик событий  - OnClick.

begin

Edit3.Text:=(a.ReadString('Секция2','Переменная2','Не обнаружено'));

end;

  Обратите внимание на изменения в коде. 'Не обнаружено' - это сообщение, которое будет выводится в наш Edit3, если по запрашиваемому адресу

не будет данных, (переменной2 ничего не будет присвоено например) таким сообщением может быть в принципе любое слово. Но поскольку данные

присутствуют и они не повреждены, то в нашем Edit после нажатия Button3, таки появится -  Delphiport.ucoz.com

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

  7)   Кидаем на форму Button4 на которой мы создадим обработчик событий  - OnClick. И запишем следующее:

begin

b:=StrToFloat(a.ReadString('Секция1','Переменная1','Не обнаружено'));

end;

Проверку кода, сделайте самостоятельно, прибавив например что-нибудь к переменной b и поместите куда-нибудь результат. B label например.

А теперь после работы с ini, освободим оперативную память, создав обработчик событий OnClose на форме:

begin

a.Free;

end;

  В дополнение хочу сказать следующее: Имена Секций и переменных можно назначать любые, но если они должны состоять из двух и более слов,

вместо пробела используйте знак"_". Например Good_day_Now. После названия инифайла не забывайте ставить расширение ".ini"

  Ну вот, пожалуй все. Советую теперь по практиковаться самостоятельно. Ini - файлы хоть и не панацея, но вещь определенно нужная и полезная. 

Успехов!!!

  

Категория: Мои файлы | Добавил: Sashok
Просмотров: 2162 | Загрузок: 0 | Комментарии: 1 | Рейтинг: 1.0/1
Всего комментариев: 0
Имя *:
Email *:
Код *:

Copyright MyCorp © 2024