Delphi справочник - Форум программистов - Навигация  
 A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z      По первой букве  
System     SysUtils     StrUtils     DateUtils     FileCtrl     ConvUtils     StdConvs     Math     Classes     Dialogs     Types     Variants    ПО Unit   Compiler directives     Directives     Keywords     Types     Variables     Constants     Functions     Procedures    По категории  

форум программистов

Основы Delphi
Read
Процедура
Позволяет прочитать данные из двоичного или текстового файла System unit
  
1 procedure Read ( var Value1 {,var Value2 ...}; ) ;

2 procedure Read ( var FileHandle : TextFile; var Value1 {,var Value2 ...}; ) ;

3 procedure Read ( var FileHandle : File; var Value1 {,var Value2 ...}; ) ;
Описание
Delphi процедура Read читает линейно данные из файла или консоли ( console ).

Версия 1

Используется, чтобы читать текстовые величины с консоли ( console ).

Версия 2

Используется, чтобы читать текстовые величины из текстового файла с данными.

Версия 3

Используется, чтобы читать данные из двоичного файла.

Вы должны использовать AssignFile, чтобы назначать файл для операций - чтения / записи; и открыть файл до процедуры чтения.

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

Для строк ( string ), будет прочитана вся строка, если она не превышает размер переменной.

При синтаксическом анализе чтения для чисел, символы интервала и концов строки являются разделителями между различными переменными. Если величина числа превышает возможность переменной, она выбрасывается в переменной не вызывая исключение.

При чтении строк или символов, ReadLn должен быть выполнен, пока не достигнут Eoln (конец линии). В противном случае, многократно возврат вызовов последующего Чтения будет невозможно.

Для двоичных файлов, данные оцениваются Value1, Value2 и т.п., прочитаны из файла данных.

Если файл данных - типизированный файл (файл определён на содержимое конкретного типа данных), тогда эти величины должны быть того же самого типа. Например, файл типа - запись, значит переменные, которые будут прочтены из этого файла, тоже должны быть такими же записями.
Примечания
Вы не можете использовать Read, чтобы читать из нетипизированного двоичного файла (который объявлен как File без указанного типа).

Для чтения из нетипизированного двоичного файла, используйте BlockRead.

Read не использует буферизацию, поэтому BlockRead более эффективен.

Read также является директивой Delphi. Она используется с ключевым словом Property.
Похожие команды
AssignFile  Связывает дескриптор файла с бинарным или текстовым файлом

CloseFile  Закрывает открытый файл

Eof  Возвращает true, если позиция курсора находится в конце файла открытого с помощью Reset

Eoln  Возвращает true, если позиция курсора находится в конце строки

File  Определяет типизированный или нетипизированный файл

ReadLn  Позволяет прочитать полную строку данных из текстового файла

Reset  Открывает текстовый файл для чтения, или двоичный файл для чтения/записи

TextFile  Объявляет типа файл для того, чтобы сохранить строки текста

Write  Записывает данные в бинарный или текстовый файл

WriteLn  Записывает законченную строку данных в текстовый файл

 
Пример кода : Чтение простых символов единовременно из текстового файла
var
  myFile : TextFile;
  letter : char;
  text   : string;

begin
  // Попытка открыть файл Test.txt для записи в него
  AssignFile(myFile, 'Test.txt');
  ReWrite(myFile);

  // Запись строки текста в файл
  WriteLn(myFile, 'Hello');
  WriteLn(myFile, 'To you');

  // Закрытие файла
  CloseFile(myFile);

  // Переоткрытие файла только для чтения
  FileMode := fmOpenRead;
  Reset(myFile);

  // Показ содержимого файла
  while not Eof(myFile) do
  begin
    // Процесс считывание одной строки
    ShowMessage('Начало новой строки :');
    while not Eoln(myFile) do
    begin
      Read(myFile, letter);   // Чтение и отображение одного символа
      ShowMessage(letter);
    end;
    ReadLn(myFile, text);
  end;

  // Закрываем файл в последний раз
  CloseFile(myFile);
end;
Начало новой строки :
H
e
l
l
o
Начало новой строки :
T
o

y
o
u
 
Пример кода : Чтение word данных из типизированного двоичного файла
var
  myWord, myWord1, myWord2 : Word;
  myFile : File of Word;

begin
  // Попытка открыть двоичный файл Test.cus для записи
  AssignFile(myFile, 'Test.cus');
  ReWrite(myFile);

  // Запись нескольких строк Word данных в файл
  myWord1 := 234;
  myWord2 := 567;
  Write(myFile, myWord1, myWord2);

  // Закрываем файл
  CloseFile(myFile);

  // Переоткрываем файл в режиме только для чтения
  Reset(myFile);

  // Показ содержимого файла
  while not Eof(myFile) do
  begin
    Read(myFile, myWord);
    ShowMessage(IntToStr(myWord));
  end;

  // Закрываем файл в последний раз
  CloseFile(myFile);
end;
234
567
 


Оплата за обучение в Kata Academy только после твоего трудоустройства в IT, начни карьеру Middle Java-разработчика



Интенсив по Python: Работа с API и фреймворками 24-26 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки? Slurm подготовили для вас особенный продукт!





форум программистов


© Форум Delphi  |  Форум Pascal   |  Блог программистов   |  Исходники Delphi   |  Автор сайта  |  Ссылки   |  Английская версия