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

Записать или добавить текст в файл

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

Записать или добавить текст в файл

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

function AppendOrWriteTextToFile(FileName : TFilename; WriteText : string): boolean;
 var
   f : Textfile;
 begin
   Result := False;
   AssignFile(f, FileName);
   try
     if FileExists(FileName) = False then
       Rewrite(f)
     else
     begin
       Append(f);
     end;
     Writeln(f, WriteText);
     Result := True;
   finally
     CloseFile(f);
   end;
 end;

 // Sample Source... 
procedure TForm1.Close1Click(Sender : TObject);
 var
   dir, log : string;
 begin
   dir := ExtractFilePath(Application.Exename);
   log := 'Last Programm Termination: ' + DateTimeToStr(now);
   AppendOrWriteTextToFile(dir + '\logfile.txt', log)
 end;

Перевод контента на русский язык:

Это фрагмент кода Delphi, демонстрирующий, как использовать функцию AppendOrWriteTextToFile для добавления или записи текста в файл.

Вот шаг за шагом, что код делает:

  1. Функция AppendOrWriteTextToFile принимает два параметра: FileName (тип TFilename) и WriteText (строка).
  2. Функция присваивает указанный файл объекту Textfile, называемому f.
  3. Если файл не существует, функция перезаписывает файл с помощью процедуры Rewrite.
  4. Если файл уже существует, функция добавляет к нему текст с помощью процедуры Append.
  5. Функция записывает указанный текст в файл с помощью процедуры Writeln.
  6. Наконец, функция возвращает логическое значение, указывающее, была ли операция успешной.

Пример исходного кода включает в себя процедуру Close1Click, которая вызывается при клике кнопки (называемой "Close") на форме (TForm1). Когда это происходит:

  1. Процедура извлекает путь к директории из исполняемого файла приложения с помощью функции ExtractFilePath.
  2. Она конструирует сообщение журнала, сконкатенировав статический текст с текущей датой и временем с помощью функции DateTimeToStr.
  3. Наконец, она вызывает функцию AppendOrWriteTextToFile для записи этого сообщения журнала в файл logfile.txt в извлеченном пути к директории.

Код хорошо структурирован и легко понятен, но есть несколько предложений по улучшению:

  • Вместо возвращения логического значения из функции AppendOrWriteTextToFile, 考虑 использовать исключения для обработки потенциальных ошибок. Это позволит вам предоставить более информативные сообщения об ошибках и сделать код более устойчивым.
  • В процедуре Close1Click можно добавить обработку ошибок, чтобы обеспечить успешность операции с файлом перед продолжением. Например, вы можете проверить, была ли запись файла успешной, и отобразить сообщение об ошибке, если не.

Вот обновленная версия функции AppendOrWriteTextToFile с использованием исключений:

function AppendOrWriteTextToFile(FileName: TFilename; WriteText: string): Boolean;
var
  f: Textfile;
begin
  Result := False;
  AssignFile(f, FileName);
  try
    if FileExists(FileName) = False then
      Rewrite(f)
    else
      Append(f);
    Writeln(f, WriteText);
    Result := True;
  except
    on E: Exception do
      ShowMessage('Ошибка записи в файл: ' + E.Message);
  end;
  finally
    CloseFile(f);
  end;
end;

Обновленная функция использует блок try-except, чтобы поймать любые исключения, возникшие во время операции с файлом. Если исключение было поднято, она отображает сообщение об ошибке с помощью процедуры ShowMessage. В противном случае она возвращает True, если операция была успешной, и False - если нет.

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


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

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




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


:: Главная :: Файлы ::


реклама


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

Время компиляции файла: 2024-12-22 20:14:06
2025-05-01 10:45:31/0.0056138038635254/1