[转载]matlab GUI中uiputfile保存文
(2016-01-17 17:54:22)
标签:
转载 |
原文地址:matlab GUI中uiputfile保存文 作者:红枫叶
文章转自matlab中文文坛:http://www.ilovematlab.cn/thread-35547-1-1.html
在此深表感谢
这两天,遇到一些会员在GUI中使用uiputfile保存文件时,不能存成自己输入的文件名
针对这个问题,我来简单的总结一下,如何实现这个目的,并解决这个问题
问题1.关于matlab数据保存为mat的问题
想在gui界面上将数据保存为.mat文件,不知道用什么方式?
要求可以将数据存到任意磁盘,可以给数据任意命名。
下面的程序:不能够实现任意命名,保存在同一个地方就会覆盖原来数据。
可以实现任意路径保存,但是不能实现名称的更改。
解析:
这是save函数的误用造成的
save str a
这种格式,str就是指定的文件名,你当然改不了
如果想随时替换这个str,存成自己输入的文件名
那就要写成下面的格式
保存文件时能不能任意存文件名呢?
读入文件代码:
解析:
fid = fopen('.txt', 'w');
上面这句决定了你要存的文件名
你写成.txt,那名字就是它了
即使你输入了也改变不了
要想存的文件名是自己输入的,就要把上面这句改成
好了,大家去试试吧!
欢迎反馈,补充说明!
这两天,遇到一些会员在GUI中使用uiputfile保存文件时,不能存成自己输入的文件名
针对这个问题,我来简单的总结一下,如何实现这个目的,并解决这个问题
问题1.关于matlab数据保存为mat的问题
想在gui界面上将数据保存为.mat文件,不知道用什么方式?
要求可以将数据存到任意磁盘,可以给数据任意命名。
下面的程序:不能够实现任意命名,保存在同一个地方就会覆盖原来数据。
复制内容到剪贴板
可是在保存时遇见问题是保存的.mat文件都是str.mat代码:
[filename
,pathname]=uiputfile({'*.mat','MAT-files(*.mat)'},'保存');%pathname获取保存数据路径,filename获取保存数据名称
str=strcat(pathname,filename);%字符串连接
save str a;%将数据a保存为mat文件;
可以实现任意路径保存,但是不能实现名称的更改。
解析:
这是save函数的误用造成的
save str a
这种格式,str就是指定的文件名,你当然改不了
如果想随时替换这个str,存成自己输入的文件名
那就要写成下面的格式
复制内容到剪贴板
问题2.为什么Matlab的uiputfile保存文件时,第二次把前面的覆盖了呢?代码:
save(char(str), 'a')
保存文件时能不能任意存文件名呢?
读入文件代码:
复制内容到剪贴板
保存文件代码:
代码:
[filename,filepath]=uigetfile('*.txt','Select Input
file');
file = [filepath filename];
fid = fopen(file,'r');
if fid == -1
('Error opening the
file')
end
%%读取文件
while 1
nextline = fgetl(fid);
%读第一行
if ~ischar(nextline)
break,
end %读到最后跳出
a =fscanf(fid,'%f
%f',[10,90]);
set(handles.edit6,'string',a);
end
复制内容到剪贴板
结果:为什么uiputfile保存文件时,第二次把前面的覆盖了呢?代码:
[FileName PathName]=uiputfile({
'*.txt','Txt
Files(*.txt)';'*.*','All Files(*.*)'},'choose a File');
str= [PathName FileName]
set(handles.edit4,'string',str);
m=get(handles.displayArea,'String')
fid = fopen('.txt', 'w');
fwrite(fid, '', 'integer*4')
fprintf(fid,'%s',m);
fclose(fid)
解析:
fid = fopen('.txt', 'w');
上面这句决定了你要存的文件名
你写成.txt,那名字就是它了
即使你输入了也改变不了
要想存的文件名是自己输入的,就要把上面这句改成
复制内容到剪贴板
就可以存成不同的文件名了,自己输入什么就是什么。代码:
fid = fopen(char(str), 'w');
好了,大家去试试吧!
欢迎反馈,补充说明!
前一篇:博客十年,感谢有你!
后一篇:BP神经网络学习记事