Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Запись в текстовый файл




 

3.1. Запись строковых значений

Вывод информации в текстовый файл выполняет функция fprintf. Запись в текстовый файл с идентификатором f2 строки символов очень проста

fprintf(f2,' Строка текста ')

Последующее обращение к fprintf записывает заданную строку сразу за предыдущей (не с новой строки!). Для вывода текста с новой строки необходимо добавить символ перевода строки \n в начало очередой строки после апострофа

fprintf(f2,'\n Строка текста с новой строки ')

или в конец предыдущей строки до апострофа

fprintf(f2,' Строка текста \n')

Вторым входным аргументом функции может быть и символьная переменная

s=' Строка текста ';

fprintf(f2,s)

Перевод строки в этом случае реализуется конкатенацией

fprintf(f2,[s '\n'])

 

3.2. Запись числовых значений

В файле, хранящем результат работы некоторой программы, символьная информация обычно перемежается с числовыми данными. Для записи в текстовый файл чисел (цепочек символов, изображающих число), конечно же, можно использовать функцию преобразования num2str. Но в этом случае трудно оформить результат в виде красивой таблицы. Для преобразования чисел из внутримашинного представления в соответствующие символьные цепочки применяют специальные форматы. Схема использования fprintf при записи числовых данных в текстовый файл следующая:

fprintf(f2, ' СписокФорматов ', СписокДанных)

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

Код формата начинается с символа %, за которым, как правило, указывают количество w позиций, отводимых под запись числа и.n количество цифр для отображения дробной части числа (таким образом, w.n означает w символов под полную запись числа, из них n символов – на дробную часть). Символы, изображающие число, выравниваются по правой границе поля шириной w. Завершается код одним из символов, характеризующих вид преобразования данных. Наиболее часто используемые символы форматов приведены в табл. 9.1. Использование целочисленных форматов предполагает, что преобразуемое число действительно является целым. В противном случае будет использован формат е. Допускается применение вещественных форматов к целочисленным значениям (число будет изображено с нулевой дробной частью).

 

Таблица 9.1

Символ формата Способ преобразования числа перед записью в текстовый файл
d Преобразование целочисленного значения в десятичное со знаком
f Преобразование числового значения в изображение вещественного числа с фиксированной точкой
e Преобразование числового значения в изображение вещественного числа с плавающей точкой (признак порядка – буква е)
g Преобразование числового значения в изображение вещественного числа с фиксированной или плавающей точкой в зависимости от того, какой формат занимает меньше места

 

Если в списке данных, выводимых в текстовый файл, встречаются комплексные числа, то преобразованию подвергаются значения только вещественных их частей.

Простейшая программа табулирования функции и записи таблицы в текстовый файл rezult.txt в рабочем каталоге может иметь следующий текст:

[f2,message]=fopen('rezult.txt','wt');

fprintf(f2,'Tаблица значений функции sin(x)')

fprintf(f2,'\n x sin(x)\n')

x=-pi/2:pi/6:pi/2;

for k=1:length(x)

fprintf(f2,'%12.4f%10.4f\n',x(k), sin(x(k)))

end

В результате работы программы получим следующий файл:

 

Таблица значений функции sin(x)

x sin(x)

-1.5708 -1.0000

-1.0472 -0.8660

-0.5236 -0.5000

0.0000 0.0000

0.5236 0.5000

1.0472 0.8660

1.5708 1.0000

Вывод столбцов таблицы можно реализовать и более красиво, не используя оператор цикла

x=-pi/2:pi/6:pi/2;

y=[x; sin(x)];

fprintf(f2,'%12.4f%10.4f\n',y)




Поделиться с друзьями:


Дата добавления: 2014-11-08; Просмотров: 519; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.