Matlab文件IO--文本与数值的写

来源:互联网 发布:表格怎样筛选重复数据 编辑:程序博客网 时间:2024/05/14 15:50

1. 写纯数值的文本文件


%% 写纯数值的文本文件dat1 = rand(3,5)dlmwrite('dat1.txt',dat1,'delimiter','\t','newline','pc');   %'pc':PC terminator (implies carriage return/line feed (CR/LF))                                                             % 采用dlmwrite函数将dat1写入文本文件dat1.txtfid = fopen('dat2.txt','wt');      %以只写、文本模式打开或创建文本文件dat2.txtfprintf(fid,'%5.4f 5.4f %5.4f 5.4f 5.4f\n',dat1);fclose(fid);

2. 写纯文本的文本文件

%% 写纯文本的文本文件content = {'自动滚屏';...           '1.可以控制浏览器自动滚动页面,这在浏览一些超长的网页时相当有用。';...           '2.您也可以控制滚动速度,和选择不同的速度控制方式。';...}           '3.鼠标控制滚动速度:把鼠标停留在滚动条上,鼠标指针位置越靠近下方,滚动速度越快。'}% % % % %以下采用fprintf函数实现写纯文本到文本文件dat1.txt中 % % % % %fid = fopen('dat1.txt','wt');str = str2mat(content);format = [repmat('%c',1,size(str,2)) '\n'];fprintf(fid, format,str');  %按指定格式将字符数组写入文本文件dat1.txt中fclose(fid); fid = fopen('dat2.txt','wt');       %以只写、文本模式打开文件dat2.txtstr = str2mat(content) %将字符串单元数组转化为字符数组str,便于fwrite函数写操作mLine = size(str,1)                 %字符数组str的行数mCol = size(str,2)str1 = zeros(mLine, mCol+2);     %扩展字符数组str,在最右侧添加两列字符:'\r\n'str1(:,1:end-2) = str;str1(:,end-1:end) = char(repmat(sprintf('\r\n'),mLine,1))fwrite(fid,str1,'char');  % writes the elements of array A to                           % a binary file in column order.fclose(fid);

3.  写文本和数值混合的文本文件
%% 写文本和数值混合的文本文件head = '序号       班名       学号       姓名      平时成绩     期末成绩';text = {'51121','5112101','陈';        '51121','5112103','李';        '51121','5112105','刘'};num = [0   63;       0   73;       0   88];% % % % % % % %以下为将数据存入data.txt的程序代码% % % %fid = fopen('data.txt','wt');fprintf(fid,[head '\n']);for i = 1:3    fprintf(fid,'%d    %s    %s    %s    %d    %d\n',i,text{i,1},...        text{i,2},text{i,3},num(i,1),num(i,2));endfclose(fid);


0 0