Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Как сохранить и получить строку из INI-файла

Delphi , Файловая система , INI файлы

Как сохранить и получить строку из INI-файла

Ниже показаны две функции, которые помещают и получают значение переменной (StringName) в ini-секции (IniSection) ini-файла (TheIniFile)}


function IniGetStringValue(
  TheIniFile: string;
  IniSection: string;
  StringName: string;
  DefaultString: string): string;
var
  TheIni: TIniFile;
begin
  TheIni := TIniFile.Create(Self);
  try
    Result :=
      TheIni.ReadString(
      IniSection,
      StringName,
      DefaultString);
    if Result = '' then
      Result := DefaultString;
  finally
    TheIni.Free;
  end;
end;

function IniSetStringValue(
  TheIniFile: string;
  IniSection: string;
  StringName: string;
  StringValue: string): Boolean;
var
  TheIni: TIniFile;
begin
  TheIni := TIniFile.Create(Self);
  try
    try
      TheIni.WriteString(
        IniSection,
        StringName,
        StringValue);
      Result := True;
    except
      Result := False;
    end;
  finally
    TheIni.Free;
  end;
end;

Привет! Я перевёл текст на русский язык:

Код-снippet является частью программы на Delphi и использует встроенный компонент TIniFile для чтения и записи значений из файла INI.

Вот подробное описание функций:

IniGetStringValue

Эта функция читает строковое значение из файла INI. Она принимает четыре параметра:

  • TheIniFile: Путь к файлу INI.
  • IniSection: Раздел в файле INI, где хранится значение.
  • StringName: Имя строки, которую нужно прочитать.
  • DefaultString: Значение по умолчанию, которое возвращается, если ключ не найден или пуст.

Функция создает объект TIniFile и читает значение с помощью ReadString. Если значение пустое, она возвращает значение по умолчанию. Затем она освобождает объект TIniFile.

IniSetStringValue

Эта функция записывает строковое значение в файл INI. Она принимает четыре параметра:

  • TheIniFile: Путь к файлу INI.
  • IniSection: Раздел в файле INI, где будет храниться значение.
  • StringName: Имя строки, которую нужно записать.
  • StringValue: Самое значение, которое нужно записать.

Функция создает объект TIniFile и пытается записать значение с помощью WriteString. Если возникает ошибка при записи, она возвращает False. Затем она освобождает объект TIniFile.

Альтернативное решение

Если вы ищете более компактный способ чтения и записи значений из файла INI, можно использовать встроенную поддержку Delphi для файлов INI. Например:

function GetStringValue(const FileName, Section, Key: string): string;
var
  IniFile: TIniFile;
begin
  IniFile := TIniFile.Create(FileName);
  try
    Result := IniFile.ReadString(Section, Key, '');
  finally
    IniFile.Free;
  end;
end;

function SetStringValue(const FileName, Section, Key, Value: string): Boolean;
var
  IniFile: TIniFile;
begin
  IniFile := TIniFile.Create(FileName);
  try
    Result := IniFile.WriteString(Section, Key, Value);
  finally
    IniFile.Free;
  end;
end;

Функции более компактны и делают то же самое, что и оригинальный код. Однако они используют встроенный компонент TIniFile Delphi, который может быть менее гибким, чем кастомная реализация, предоставленная в оригинальном коде.

Функции IniGetStringValue и IniSetStringValue позволяют сохранять и получать строки из INI-файла, используя для этого класс TIniFile и соответствующие методы ReadString и WriteString.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: INI файлы ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-11-13 09:25:51/0.0037028789520264/0