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

Как после записи в ini-файл сбросить cache на диск, чтоб задействовать изменения

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

Как после записи в ini-файл сбросить cache на диск, чтоб задействовать изменения

Top компьютерных шуточек:
1. 16 мегабайт тому назад...
2. А кофе на клавиатуру тоже вирус пролил?
3. Я пришёл к тебе с дискетой - рассказать, что сеть упала
4. pkunzip.zip
5. 001, 010, 011, 100, 101 - вышел зайчик погулять
6. Если глюк оказался вдруг, и не друг и не враг, а баг...
7. Нет повести печальнее на свете, чем повесть о заклинившем Reset'е
8. Жизнь.exe /?
9. 4 Mb - это не память. Это склероз.
10. Нажмите любую клавишу... Нет, нет, только не эту!..
11. Ничто так не ограничивает полёт мысли программиста, как компилятор
12. Клаву топтать - это вам не с Джойстиком баловаться...
13. Российские хакеры взломали бортовой компьютер российского истребителя СУ-27. Теперь боекомплект самолёта нескончаемый.

Вызовите функцию WriteProfileString() или WritePrivateProfileString(), передав ей в качестве параметров секции, ключа и строки - nil.


WriteProfileString(nil, nil, nil);
WritePrivateProfileString(nil, nil, nil, FileName);

Сборка юмористических шуток о компьютерах!

Теперь давайте обсудим ваш вопрос.

Чтобы очистить кэш на диск после записи в файл INI с помощью функций WriteProfileString или WritePrivateProfileString из Delphi, вы можете использовать метод Flush класса TStreamWriter. Вот пример:

with TStreamWriter.Create(FileName, False) do
try
  WritePrivateProfileString(nil, nil, nil, FileName);
  Flush; // <--- Это строка очищает кэш на диск
finally
  Free;
end;

В этом коде мы создаем объект TStreamWriter с именем файла и устанавливаем параметр Overwrite в False. Затем мы вызываем функцию WritePrivateProfileString как обычно. После этого мы используем метод Flush, чтобы заставить кэш быть записанным на диск. Наконец, мы освобождаем объект TStreamWriter.

Обратите внимание, что этот код предполагает, что вы объявили переменную FileName с путем и именем вашего файла INI.

Альтернативно, если вы хотите очистить кэш для всех потоков (не только для того, который был создан функцией WritePrivateProfileString), вы можете использовать метод Flush из единицы System.IOUtils:

IOUtils.FlushAll;

Это очистит все открытые потоки, включая те, которые не были явно очищены.

Как после записи в ini-файл сбросить cache на диск, чтоб задействовать изменения, можно вызвать функцию WriteProfileString() или WritePrivateProfileString(), передав ей в качестве параметров секции, ключа и строки - nil.


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

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




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


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


реклама


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

Время компиляции файла: 2024-12-22 20:14:06
2025-01-29 02:12:55/0.024840116500854/1