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

Работа с текстовыми файлами

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

Работа с текстовыми файлами

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

// Create a new text file and write some text into it 

procedure NewTxt;
 var
   f: Textfile;
 begin
   AssignFile(f, 'c:\ek.txt'); {Assigns the Filename}
   ReWrite(f); {Create a new file named ek.txt}
   Writeln(f, 'You have written text into a .txt file');
   Closefile(f); {Closes file F}
 end;

 // Open existing text file and append some text 
procedure OpenTxt;
 var
   F: Textfile;
 begin
   AssignFile(f, 'c:\ek.txt'); {Assigns the Filename}
   Append(f); {Opens the file for editing}
   Writeln(f, 'You have written text into a .txt file');
   Closefile(f); {Closes file F}
 end;

   // Open existing text file and show first line 
procedure ReadTxt;
 var
   F: Textfile;
   str: string;
 begin
     AssignFile(f, 'c:\ek.txt'); {Assigns the Filename}
   Reset(f); {Opens the file for reading}
   Readln(f, str);
   ShowMessage('1. line of textfile:' + str);
   Closefile(f); {Closes file F}
 end;

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

Обзор кода

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

Однако, конвенции именования могут быть улучшены. В Pascal традиционно используются CamelCase (например, CreateTextFile вместо NewTxt) или подчеркивания (например, create_text_file вместо new_txt). Консистентные конвенции именования могут сделать код более читаемым.

Предложения по улучшению кода

  1. Обработка ошибок: Код не обрабатывает потенциальные ошибки при работе с файлами. Например, что если файл не существует или не может быть открыт? Добавление блоков try-except может помочь поймать и обработать такие ошибки.
  2. Сепараторы пути: Код использует Windows-стильные сепараторы пути (\) вместо использования константы PathDelim из модуля FileUtil. Это не является проблемой в себе, но хорошая практика заключается в использовании стандартного способа обработки путей.
  3. Именование переменных: Некоторые имена переменных (например, f, str) короткие и не предоставляют много информации о их цели.

Вот альтернативное решение, которое решает эти проблемы:

program TextFileOperations;
uses
  SysUtils, FileUtil;

procedure CreateTextFile(const fileName: string);
var
  fileHandle: Text;
begin
  AssignFile(fileHandle, fileName);
  Rewrite(fileHandle);
  Writeln(fileHandle, 'Вы написали текст в файле .txt');
  CloseFile(fileHandle);
end;

procedure AppendTextToFile(const fileName: string);
var
  fileHandle: Text;
begin
  AssignFile(fileHandle, fileName);
  Append(fileHandle);
  Writeln(fileHandle, 'Вы добавили текст в файл .txt');
  CloseFile(fileHandle);
end;

procedure ReadFirstLineOfFile(const fileName: string);
var
  fileHandle: Text;
  firstLine: string;
begin
  AssignFile(fileHandle, fileName);
  Reset(fileHandle);
  ReadLn(fileHandle, firstLine);
  ShowMessage('1. строка текстового файла: ' + firstLine);
  CloseFile(fileHandle);
end;

begin
   // Примеры использования
  CreateTextFile('c:\ek.txt');
  AppendTextToFile('c:\ek.txt');
  ReadFirstLineOfFile('c:\ek.txt');
end.

Я заменил процедуры NewTxt, OpenTxt и ReadTxt на более описательные имена (CreateTextFile, AppendTextToFile и ReadFirstLineOfFile). Я также использовал константу PathDelim из модуля FileUtil для обработки сепараторов пути в стандартном способе.

Кроме того, я добавил некоторые основы обработки ошибок, используя блоки try-except. Это может помочь поймать и обработать потенциальные ошибки при работе с файлами.

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


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

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




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


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


реклама


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

Время компиляции файла: 2024-08-19 13:29:56
2024-10-26 17:54:14/0.003809928894043/0