Difference between revisions of "Using INI Files/ru"

From Lazarus wiki
(Краткий состав)
m (Fixed syntax highlighting; deleted category included in page template)
 
(9 intermediate revisions by 5 users not shown)
Line 4: Line 4:
  
 
===Обзор===
 
===Обзор===
INI-файлы могут быть использованы для сохранения пользовательских параметров. С модулем INIFiles и классом TINIFile вы можете легко работать с существующими INI файлами. Я покажу вам основы рабооты с классом TINIFile.
+
INI-файлы могут быть использованы легко для сохранения пользовательских параметров. С модулем '''INIFiles''' и классом '''TINIFile''' вы можете легко работать с существующими INI файлами. Этот модуль находится в FCL.
  
 
===Краткий состав===
 
===Краткий состав===
INI-файлы работают с секциями(Sections), ключами(Keys) и значениями(Values). Пример:<br>
+
INI-файлы работают с секциями(Sections), ключами(Keys) и значениями(Values).<br>
[Section]<br>
+
Пример:
 +
 
 +
<syntaxhighlight lang=ini>
 +
[Section]
 
Key=Value
 
Key=Value
 
+
</syntaxhighlight>
 
В одной секции может быть несколько ключей.  
 
В одной секции может быть несколько ключей.  
 
В файле может быть несколько секций.
 
В файле может быть несколько секций.
 
  
 
====Для чего это нужно====
 
====Для чего это нужно====
INI-файлы позволяют очень просто читать и записывать данные. Как и XML-файлы.
+
INI-файлы позволяют очень просто читать и записывать данные.
  
 
===Пример===
 
===Пример===
  
So first things first.. Lets do a basic console application.
+
Создайте простое консольное приложение.
<Delphi>
+
 
 +
<syntaxhighlight lang=pascal>
 
Progam INIex;
 
Progam INIex;
  
Line 27: Line 30:
  
 
Uses
 
Uses
  SysUtils,INIFiles;{INIFiles = The unit with the INI Classes}
+
  SysUtils,INIFiles;{INIFiles = модуль который содержит класс для работы с INI-файлами}
  
 
Var
 
Var
  IniF:TINIFile;//The class
+
  IniF:TINIFile;// Класс для работы с INI-файлами
</Delphi>
+
</syntaxhighlight>
  
Something you have to know is that when using the TINIfile class you have to work with an existing INI file.. So open Note pad and create an INI file.. Lets use this as an example:
 
  
 +
При использовании TINIfile вы должны работать с существующим INI файлом. Так что откройте текстовый редактор и создайте его. Можете использовать это для примера:
 +
 +
<syntaxhighlight lang=ini>
 
[S1]
 
[S1]
 
 
Key1=Hello World
 
Key1=Hello World
  
 
[S2]
 
[S2]
 +
Key2=Worldly Hello
 +
</syntaxhighlight>
  
Key2=Worldly Hello
+
Теперь вернемся к нашему коду.
  
Ok.. Now back to our code
+
<syntaxhighlight lang=pascal>
<Delphi>
 
 
begin
 
begin
 
   Writeln('Creating class');
 
   Writeln('Creating class');
Line 50: Line 55:
 
   begin
 
   begin
 
     Inif := TINIFile.Create('someini.ini');
 
     Inif := TINIFile.Create('someini.ini');
     Writeln(INiF.ReadString('s1','Key1','');
+
     Writeln(INiF.ReadString('s1','Key1',''));
   End else Writeln('File not found...');
+
   End else Writeln('Файл не найден...');
 
   Readln;
 
   Readln;
 
end.
 
end.
</Delphi>
+
</syntaxhighlight>
  
 
===Свойства и методы===
 
===Свойства и методы===
In the TINIFile class there are many different Propertys, procedures and functions to be used.
+
В классе TINIFile есть много свойств, процедур и функций которые можно использовать.
  
'''CaseSensitive''' - This property allows you to say if the keys and sections are case sensitive or not.. by default they aren't..
+
'''CaseSensitive''' - Это свойство позволяет установить используются ли названия секций и ключей с учетом регистра. По умолчанию нет.
  
'''ReadString''' - Has 3 constant statements. the first one is the section to search in. The second one is the key to look for. The third one is a default string incase the key and\or section searched for is not found.
+
'''ReadString''' - Имеет три постоянных параметра. Первый - секция в которой производится поиск. Второй - ключ. Третий - значение строки по умолчанию, которое будет возвращено если секция и/или ключ не найдены.
  
'''WriteString''' has three constant statements too... The first is the section. The third is the key and the last is the Value. If the key and section exist already the Key will be over written with the new value..
+
'''WriteString''' Также имеет три параметра. Первый - секция. Второй - ключ. Третий - значение ключа. Если ключ и секция уже существуют, то значения ключа будет перезаписано на новое.
  
'''ReadSections''' - Will allow you to to take the sections from the INI file and put them in a TStrings class(Or TStringList with the AS code)
+
'''ReadSections''' - Позволит вам взять секцию из INI-файли и поместить ей в класс TStrings(или TStringList)
  
'''DeleteKey''' - Remove an existing Key from a specific section
+
'''DeleteKey''' - Удаляет существующий ключ в секции.
  
'''EraseSection''' Remove a section and all its data
+
'''EraseSection''' Удаляет секцию и все её данные.
  
There are more procedures and functions but this is basic..
+
Имеется еще много процедур и функций, но это базовые.
  
 
===Заключение...===
 
===Заключение...===
Here: [http://lazarus-ccr.sourceforge.net/docs/fcl/inifiles/index.html] you can learn all about INI Files to..
+
Тут: [http://lazarus-ccr.sourceforge.net/docs/fcl/inifiles/index.html] вы можете прочитать все об INI-файлах.
Please, if you can put up more information about INI files in Pascal.
+
Пожалуйста, если вы можете добавить больше информации об INI-файлах в Pascal
'''Modify At Will'''
+
'''Дополните эту статью'''
 
 
[[Category:Tutorials/ru]]
 

Latest revision as of 09:09, 4 March 2020

العربية (ar) Deutsch (de) English (en) español (es) suomi (fi) français (fr) русский (ru) 中文(中国大陆)‎ (zh_CN)

Файлы INI

Обзор

INI-файлы могут быть использованы легко для сохранения пользовательских параметров. С модулем INIFiles и классом TINIFile вы можете легко работать с существующими INI файлами. Этот модуль находится в FCL.

Краткий состав

INI-файлы работают с секциями(Sections), ключами(Keys) и значениями(Values).
Пример:

[Section]
Key=Value

В одной секции может быть несколько ключей. В файле может быть несколько секций.

Для чего это нужно

INI-файлы позволяют очень просто читать и записывать данные.

Пример

Создайте простое консольное приложение.

Progam INIex;

{$mode objfpc}

Uses
 SysUtils,INIFiles;{INIFiles = модуль который содержит класс для работы с INI-файлами}

Var
 IniF:TINIFile;// Класс для работы с INI-файлами


При использовании TINIfile вы должны работать с существующим INI файлом. Так что откройте текстовый редактор и создайте его. Можете использовать это для примера:

[S1]
Key1=Hello World

[S2]
Key2=Worldly Hello

Теперь вернемся к нашему коду.

begin
  Writeln('Creating class');
  IF(FileExists('someini.ini'))then
  begin
    Inif := TINIFile.Create('someini.ini');
    Writeln(INiF.ReadString('s1','Key1',''));
  End else Writeln('Файл не найден...');
  Readln;
end.

Свойства и методы

В классе TINIFile есть много свойств, процедур и функций которые можно использовать.

CaseSensitive - Это свойство позволяет установить используются ли названия секций и ключей с учетом регистра. По умолчанию нет.

ReadString - Имеет три постоянных параметра. Первый - секция в которой производится поиск. Второй - ключ. Третий - значение строки по умолчанию, которое будет возвращено если секция и/или ключ не найдены.

WriteString Также имеет три параметра. Первый - секция. Второй - ключ. Третий - значение ключа. Если ключ и секция уже существуют, то значения ключа будет перезаписано на новое.

ReadSections - Позволит вам взять секцию из INI-файли и поместить ей в класс TStrings(или TStringList)

DeleteKey - Удаляет существующий ключ в секции.

EraseSection Удаляет секцию и все её данные.

Имеется еще много процедур и функций, но это базовые.

Заключение...

Тут: [1] вы можете прочитать все об INI-файлах. Пожалуйста, если вы можете добавить больше информации об INI-файлах в Pascal Дополните эту статью