《Matlab 数字和字符的合并转换》由会员分享,可在线阅读,更多相关《Matlab 数字和字符的合并转换(6页珍藏版)》请在金锄头文库上搜索。
1、数字和字符的合并转换数字和字符的合并转换for i=1:5d=num2str(i);c=strcat(a,d);e=eval(c);b(:,i)=e(:,1);end目的是生成文件名a1 a2 a3 a4d=num2str(i); 先把数字 1 2 3 4转换成字符c=strcat(a,d); 再把数字和字母a结合起来生成文件名e=eval(c); 再把这个字符转换成可移执行的命令行如果要把一组数存到另外一组矩阵里,例如a=1 2 34 5 67 8 9现在要把这三行数据分别存进3个矩阵,b1,b2,b3命令如下eval(strcat( b,num2str(i),=a(i,;);)eval里面
2、的东西就等于是直接在命令窗口里面输入的东西提取提取 rstx 文件里面的数据文件里面的数据clear allnum=0;fidin=fopen(G2000.rstx); % fidout=fopen(mkmatlab.txt,w); % 创建 MKMATLAB.txt 文件while feof(fidin) % 判断是否为文件末尾 tline=fgetl(fidin); % 从文件读行 a,b=size(tline) ;% 确定指针指到的这一行的维数大小bif b8if double(tline(3)=48fprintf(*n);fprintf(fidout,%sn,tline) % 如果是数
3、字行,把此行数据写入文件 MKMATLAB.txt% a(num,:)=tlinex=fidout;elseendendcontinue % 如果是非数字继续下一次循环endfclose(fidout);MK=textread(MKMATLAB.txt); % 将生成的 MKMATLAB.txt 文件导入工作空间,变量名为 MK,实际上它不显示出来 自动读取大批量的数据自动读取大批量的数据clear allclose allpw=2; pv=100;for i=1:1clear a b c d e f g MK c1=num2str(i-1);c2=num2str(pw);c3=num2str(pv);c4=strcat(LH_bdn_hd,c1,_pw,c2,_G,c3,.rstx); % 生成文件名,纯纯字符字符filename=(c4); % 转换成真正的文件名num=0;fidin=fopen(filename); 直接读文件,不要加单引号!要加单引号!