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

Считывать строки из текстового DOS файла

Delphi , ОС и Железо , DOS и Консоль

Считывать строки из текстового DOS файла

Автор: Dimka Maslov

Налоговая полиция конфисковала большую партию пиратских дисков с Windows-98. То, что программа ненастоящая, стало ясно после того, как она поднялась за считанные секунды и к тому же нормально работала на 486-м процессоре.


procedure ReadDosTextFile(FileName: string; List: TStrings);
var
 S: string;
 i: integer;
begin
 List.BeginUpdate;
 try
  List.LoadFromFile(FileName);
  for i:=0 to List.Count - 1 do begin
   S:=List[i];
   OemToChar(PChar(S), PChar(S));
   List[i]:=S;
  end;
 finally
  List.EndUpdate;
 end;
end;

procedure WriteDosTextFile(FileName: string; List: TStrings);
var
 S: string;
 I: integer;
 L: TStringList;
begin
 L:=TStringList.Create;
 try
  L.Assign(List);
  for i:=0 to L.Count - 1 do begin
   S:=L[i];
   CharToOem(PChar(S), PChar(S));
   L[i]:=S;
  end;
  L.SaveToFile(FileName);
 finally
  L.Free;
 end;
end;

Пример программирования на языке Delphi, демонстрирующий чтение и запись текстовых файлов в формате DOS (с кодовой страницей OEM). Код содержит два процедура: ReadDosTextFile и WriteDosTextFile.

ReadDosTextFile Процедура ReadDosTextFile читает содержимое текстового файла в формате DOS (с кодовой страницей OEM) в объект TStrings, который является коллекцией строк. Процедура принимает два параметра:

  • FileName: имя файла для чтения
  • List: объект TStrings, в котором будет храниться содержимое файла

Процедура выполняет следующие шаги: 1. Начинает операцию обновления объекта List с помощью BeginUpdate. 2. Пытается загрузить содержимое файла в объект List с помощью LoadFromFile. Метод читает файл в кодовой странице OEM, которая является специфичной для DOS. 3. Итерирует по каждой строке в объекте List и конвертирует ее из кодовой страницы OEM в кодовую страницу ANSI с помощью функции OemToChar. 4. Обновляет объект List с конвертированными строками. 5. Завершает операцию обновления объекта List с помощью EndUpdate.

WriteDosTextFile Процедура WriteDosTextFile записывает содержимое объекта TStrings в текстовый файл в формате DOS (с кодовой страницей OEM). Процедура принимает два параметра:

  • FileName: имя файла для записи
  • List: объект TStrings, содержащий содержимое файла

Процедура выполняет следующие шаги: 1. Создает новый объект TStringList с помощью Create. 2. Присваивает объект List новосозданному объекту TStringList. 3. Итерирует по каждой строке в объекте TStringList и конвертирует ее из кодовой страницы ANSI в кодовую страницу OEM с помощью функции CharToOem. 4. Обновляет объект TStringList с конвертированными строками. 5. Сохраняет содержимое файла в указанное имя файла с помощью SaveToFile. 6. Освобождает память, выделенную для объекта TStringList.

В целом, эти процедуры позволяют читать и записывать текстовые файлы в формате DOS (кодовая страница OEM) с использованием объекта TStrings Delphi. Процедура ReadDosTextFile конвертирует строки кодовой страницы OEM в кодовую страницу ANSI, а процедура WriteDosTextFile конвертирует строки кодовой страницы ANSI в кодовую страницу OEM.

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

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


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

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




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


:: Главная :: DOS и Консоль ::


реклама


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

Время компиляции файла: 2024-12-22 20:14:06
2025-06-16 14:39:54/0.0031740665435791/0