Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2009-11-16, 17:44   #1
wt_v90
初级会员
 
注册日期: 2009-11-16
帖子: 3
声望力: 0
wt_v90 正向着好的方向发展
默认 Matlab中的sendmail功能,请各位高手指点,不胜感激。

在运用matlab创建文件的时候,文件名是自动定义的,如下:

col = 5;
for i = 1 : col
filepath='C:\Documents and Settings\output\';
fid=fopen([filepath 'Test' num2str(i) '.txt'],'wt');
format = '%s\r\n';
for j = 1 : length(results{1,col})
data = strvcat(results{1,i}{j});
fprintf(fid,format,data');
end
fclose(fid);

所生成的文件名是 Test1, Test2, ... Test5
之后把生成的文件用sendmail发送。发送邮件的时候,同样希望sendmail可以自动识别文件名,如下:

subject = 'Test Title';
message = 'Test messgae';
to = {'[email protected]'};
attachment = {'C:\Documents and Settings\output\Test' num2str(i) '.txt'};
sendmail(to, subject, message, attachment);
end

错误显示不能打开文件:Test。
有没有什么办法可以让sendmail识别变换的附件名? 请高手帮忙!谢谢。
wt_v90 当前离线   回复时引用此帖
旧 2009-11-16, 18:28   #2
wt_v90
初级会员
 
注册日期: 2009-11-16
帖子: 3
声望力: 0
wt_v90 正向着好的方向发展
默认 回复: Matlab中的sendmail功能,请各位高手指点,不胜感激。

问题已经解决,谢谢大家的关注。
我简单解释一下问题出在哪里。

matlab中大括号创建的是元胞数组字符串和自定义变量是不联系的,如果想把它们联系起来,应该用中括号。只要把
attachment = {'C:\Documents and Settings\output\Test' num2str(i) '.txt'};
改成
attachment = {['C:\Documents and Settings\output\Test' num2str(i) '.txt']};
就可以了。
wt_v90 当前离线   回复时引用此帖
回复

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 20:53


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.