Перейти на главную   
  helloworld.ru - документация и книги по программированию  
helloworld.ru - документация и книги по программированию
    главная     хостинг    
Поиск по сайту:  
Смотрите также
Языки программирования
C#
MS Visual C++
Borland C++
C++ Builder
Visual Basic
Quick Basic
Turbo Pascal
Delphi
JavaScript
Java
PHP
Perl
Assembler
AutoLisp
Fortran
Python
1C

Интернет-технологии
HTML
VRML
HTTP
CGI
FTP
Proxy
DNS
протоколы TCP/IP
Apache

Web-дизайн
HTML
Дизайн
VRML
PhotoShop
Cookie
CGI
SSI
CSS
ASP
PHP
Perl

Программирование игр
DirectDraw
DirectSound
Direct3D
OpenGL
3D-графика
Графика под DOS

Алгоритмы
Численные методы
Обработка данных

Сис. программирование
Драйверы

Базы данных
MySQL
SQL

Другое

Хостинг


Друзья
demaker.ru
Реклама

Лучший хостинг. Аренда серверов




helloworld.ru

III. ФУНКЦИИ И ПРОЦЕДУРЫ ДЛЯ РАБОТЫ С ФАЙЛАМИ

1. Основные функции и процедуры для работы с файлами

Процедура BlockRead( var Vf : file; var Buf; Count: Integer [; var AmtTransferred: Integer] );


Модуль: System

Описание
Процедура читает одну или большее количество записей из открытого файла, связанного с файловой переменной Vf, в переменную Buf. Параметр Count определяет количество записей, которое необходимо прочитать из файла. В параметре AmtTransferred возвращается фактическое количество прочитанных записей, которое может быть меньше Count (например, когда размер последнего блока данных в файле меньше заданного размера записи). Максимальный размер прочитанного блока равен Count*RecSize байт. RecSize - размер записи, определенный, во время открытия файла (если размер записи не был задан, то используется значение по умолчанию - 128 байт). Параметр AmtTransferred является необязательным. Но если данный параметр опущен, а количество прочитанных записей меньше Count, то возникнет ошибка ввода/вывода (исключение EInOutError).

Пример
var
   Vf1, Vf2 : file;
   NRead, NWrite: Integer;
   Buf: array[1..1024] of Char;
begin
  AssignFile(Vf1, 'read.txt');
  Reset(Vf1, 1);  {Устан-ет размер записи входного файла =1}
  AssignFile(Vf2, 'write.txt');
  Rewrite(Vf2, 1);  {Устан-ет размер записи выходного файла =1}
  repeat
     BlockRead(Vf1, Buf, SizeOf(Buf), NRead);    {читает данные}
     BlockWrite(Vf2, Buf, NRead, NWrite);    {записывает данные}
  until (NRead = 0) or (NWrite <> NRead);
  CloseFile(Vf1);
  CloseFile(Vf2);
end;


[ Оглавление ]









helloworld.ru © 2001-2021
Все права защищены