
К строкам […]
Вычисление строковых выражений
Строковые выражения обычно не вычисляются, так что, к примеру, вывод строки
'2+3' просто повторяет строку:
>> '2+3'
ans =
2+3
Однако с помощью функции eval('строковое выражение') строка, представляющая математическое выражение, преобразуется в вычисляемую форму и может быть вычислена:
>> eval('2+3')
ans = 5
>> eval('2*sin(1)')
ans = 1.6829
Ниже использование eval возвращает 12 матриц, представляющих магические квадраты чисел от 1 до 12:
for n = 1:12
eval(['M' num2str(n) ' = magic(n)'])
end
eval(S1,S2) в случае ошибки в вычислении выражения s1 оценивает выражение s2.
Работа с файлами
9.4. Операции с двоичными файлами
Файл обычно является некоторой совокупностью данных, объединенных одним именем.
Тип файла определяется его расширением.
Перед использованием любого файла он должен быть открыт, а по окончании использования – закрыт.
Двоичными, или бинарными, называют файлы, данные которых представляют собой машинные коды.
9.4.1. Открытие файла
fid=fopen(filename, permission) открывает файл с именем filename и параметром, определенным в permission, и возвращает идентификатор fid со значением:
0 – чтение с клавиатуры (permission = 'r');
1 – вывод на дисплей (permission = 'а');
2 – вывод сообщения об ошибке (permission = 'а');
–1 – неудача в открытии файла с выводом сообщения message о типе ошибки.
Имя файла filename может содержать путь к файлу.
Если открываемый для чтения файл не найден в текущем каталоге, то осуществляется поиск файла по пути, указанном в MATLAB.
Параметр permission может принимать одно из следующих основных значений:
– 'r' – открытие файла для чтения (по умолчанию);
– 'r+' – открытие файла для чтения и записи;
– 'w' – удаление содержимого существующего файла или создание нового и открытие его для записи;
– 'a' – создание и открытие нового файла или открытие существующего
для записи с добавлением в конец файла.
Добавление к этой строке 'b' (подразумевается по умолчанию) предписывает системе открыть файл в двоичном режиме.
Добавление же вместо b к этой строке 't', например 'rt', в операционных системах, которые имеют различие между текстовыми и двоичными файлами, предписывает системе открыть файл в текстовом режиме.
[fid,message] = fopen(filename,permission,format) открывает файл, как описано выше, возвращая идентификатор файла и сообщение. Кроме того, значение параметра format позволяет точно определить числовой формат.
fids = fopen('all') возвращает вектор-строку, содержащую идентификаторы всех открытых файлов, не включая стандартные потоки 0, 1 и 2.
[filename,permission,format] = fopen(fid) возвращает полное имя файла, строку permission и строку format. При использовании не допустимых значений fid возвращаются пустые строки для всех выходных аргументов.
9.4.2. Закрытие файла
status = fclose(fid) закрывает файл, если он открыт. Возвращает статус файла status, равный 0, если закрытие завершилось успешно, и –1 в противном случае. Аргумент fid – это идентификатор, связанный с открытым файлом.
status = fclose('all') закрывает все открытые файлы. Возвращает 0 в случае успешного завершения и –1 в противном случае.
Пример открытия и закрытия файла:
>> fid=fopen('c:\ex','a+')
fid = 4
>> fclose(4)
ans = 0