Главная. Учебники по программам для графики и дизайна!! Главная страница сайта.

 

Позиционирование файла

При считывании и записи файлов они условно представляются в виде линейно расположенных данных, наподобие записи на непрерывной магнитной ленте. Место, с которого идет считывание в данный момент (или позиция, начиная с которой идет запись), определяется специальным указателем. Файлы последовательного доступа просматриваются строго от начала до конца, а в файлах произвольного доступа указатель может быть размещен в любом месте, начиная с которого ведется запись или считывание данных файла.

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

Если последняя операция ввода-вывода, выполненная для определенного значением fid файла, была успешной, значение message — это пустая строка, a errnum принимает значение 0.

Значение errnum, отличное от нуля, говорит о том, что при последней операции ввода-вывода произошла ошибка. Параметр message содержит строку, содержащую информацию о характере возникшей ошибки.

Пример:

» fid=fopen('с:\examplel'.'а+') 

fid =

3

» t= fread(3,[4.5]) 

t =

Empty matrix: 4-by-0 

» ferror(3) 

ans = 

Is the file open for reading? . . .

Аргументы:

Примеры:

» f id-fopen('с:\example'.'a+') 

fid =

3

» count = fwrite(3,magic(6)) 

count = 36

 » ftelK3) 

ans =

36

» frewind(3):ftell(3) 

ans =

0

» fseek(3.12.0);ftell(3)

ans=

12

» feof(3) 

ans =

0

» fclose(3) 

ans =

0

Примеры:

» sprintf('*0.5g'.(l+sqrt(7))/4)

ans =

0.91144

» sprintfC '%s', 'привет')

ans =

привет

Функция sscanf аналогична функции fscanf за исключением того, что она считывает данные из символьной переменной системы MATLAB, а не из файла.

Строка format состоит из обычных символов и спецификаторов. Спецификаторы указывают тип данных и включают в себя символ %, опцию ширины поля и символы формата. Пояснения можно найти в описании функции fscanf.

Пример:

» s = '4.83 3.16 22 45';

» [A.n,err,next] = sscanf(s. '%f')

А =

4.8300 - 3.1600

22.0000

45.0000 

n =

еrr=

next = 

16

 

Hosted by uCoz
Google Scholar
Web Informer Button Web Informer Button