Файлы. Действия с файлами. Ввод чисел (текста) в текстовый файл

function[]=exTextFile() for i=1:3 for j=1:3 A(i,j)=input(strcat('A(',int2str(i),',',int2str(j),')=')); end end f=fopen('exTextFile_1.txt','wt'); fprintf(f,'first matrix \n'); for i=1:3    for j=1:3        fprintf(f,'%f\t',A(i,j));    end    fprintf(f,'\n'); end    for i=1:3    for j=1:3        A(i,j)=A(i,j)^2;    end end fprintf(f,'next matrix \n'); for i=1:3    for j=1:3        fprintf(f,'%f\t',A(i,j));    end    fprintf(f,'\n'); end fclose(f); end Текстовыми файлами называются файлы из символов (текста). Они состоят из строк, оканчивающихся символом «конец строки». Он записывается в тексте программы, вводящей текст в файл, как \n. Для введения элементов символьной строки в текст файла используется команда fprintf. Для создания промежутков между данными в тексте записываемого файла используется знак табуляции. Он записывается в тексте программы, вводящей текст в файл, как \t. В конце файла стоит символ «конец файла». Он ставится автоматически командой, закрывающей операции с фалом fclose(f), где в скобках указано имя переменной f, которая связана с файлом.

Файл имеет расширение .txt. Двоичные файлы содержат информацию в виде последовательностей двоичных символов заданной длины. Имеют расширение .dat.

Для открытия текстового файла используется команда f=fopen('exTextFile_1.txt','wt'); где f имя переменной которая будет изображать открытый файл в тексте программы. exTextFile_1.txt это имя файла с расширением .txt который будет открыт. Если он не существовал раньше то он будет создан (без какого-либо содержащегося в нем текста). wt означает что файл вновь создаваемый, текстовый, пустой и открыт только для записи.

Команда fprintf(f,'first matrix \n'); означает что в упомянутый файл f будет помещена (записана) строка указанная в кавычках. Ее завершает символ конца строки \n.

Команда fprintf(f,'%f\t',A(i,j)); записывает в файл очередной элемент массива A(i,j). Указанное в кавычках %f означает что элемент массива будет записан как число со знаком, с шестью знаками после запятой (а если бы было %d то было бы целое число со знаком; символ; %s строка символов; %g число со знаком и указанием порядка). Указанное там же \t означает что перед элементом массива будет вставлена табуляция (то есть перед ним будет широкий пробел).

Команда fprintf(f,'\n'); означает что будет вставлен символ конца строки и произойдет переход на следующую строку.

Команда fclose(f); закрывает файл f. Она необходима. Каждый использованный (открытый) файл необходимо закрыть (закончить работу с ним). На рис.1.23 показано содержимое Command Window при вызове функции exTextFile и последующем вводе данных в командной строке. Рядом показано содержимое файла, созданного в результате работы этой функции.

A(1,1)=1 A(1,1)=2 A(1,1)=3 A(1,1)=4 A(1,1)=5 A(1,1)=6 A(1,1)=7 A(1,1)=8 A(1,1)=9

Рис.1.23. Слева) Command Window при вызове функции exTextFile и последующем вводе данных в командной строке. Справа) содержимое текстового файла, созданного в результате работы этой функции и открытого в окне Current Directory щелчком мыши.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: