ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Matlab怎么发送邮件

2021-05-17 20:57:05  阅读:183  来源: 互联网

标签:recipients sendmail setpref SMTP 发送 Matlab message 邮件 subject


1、sendmail向地址列表发送电子邮件理论知识

语法

sendmail(recipients,subject)
sendmail(recipients,subject,message)
sendmail(recipients,subject,message,attachments)

 

说明

sendmail(recipients,subject) 向 recipients 发送具有指定 subject 的电子邮件。对于单个收件人,请将 recipients 指定为字符向量或字符串。对于多个收件人,请将 recipients 指定为字符向量元胞数组或字符串数组。subject 必须是字符向量或字符串。

 

sendmail(recipients,subject,message) 包括指定的 message。如果 message 是字符向量或字符串,则 sendmail 自动在 75 个字符处对文本换行。要强制在消息文本中换行,请使用 10,如示例中所示。如果 message 是字符向量元胞数组或字符串数组,则每个元素代表一行新文本。

 

sendmail(recipients,subject,message,attachments) 附加 attachments 输入参数中列出的文件。attachments 可以是字符向量、字符向量元胞数组或字符串数组。

示例

将包含两个附件的消息发送到假设的电子邮件地址:sendmail('user@otherdomain.com',...

         'Test subject','Test message',...

         {'folder/attach1.html','attach2.doc'});

将包含强制换行符(使用 10)的消息发送到假设的电子邮件地址:sendmail('user@otherdomain.com','New subject', ...

        ['Line1 of message' 10 'Line2 of message' 10 ...

         'Line3 of message' 10 'Line4 of message']);

生成的消息为:

Line1 of message

Line2 of message

Line3 of message

Line4 of message

提示

  • sendmail 函数不支持 HTML 格式的消息。不过,您可以按附件形式发送 HTML 文件。
  • 如果 sendmail 无法根据系统注册表确定您的电子邮件地址或传出 SMTP 邮件服务器,请使用 setpref 函数指定这些设置。例如:
  • setpref('Internet','SMTP_Server','my_server.example.com');
setpref('Internet','E_mail','my_email@example.com');

要确定用于调用 setpref 的 SMTP 服务器,请检查您的电子邮件应用程序的预设,或咨询您的电子邮件系统管理员。如果您无法轻易地确定服务器名称,请尝试 'mail' 这个常见默认值,例如:

setpref('Internet','SMTP_Server','mail');

  • 默认情况下,sendmail 函数不支持需要身份验证的电子邮件服务器。要支持这些服务器,请使用以下形式的命令更改您的系统设置并设置 SMTP 用户名和密码的预设:
  • props = java.lang.System.getProperties;
  • props.setProperty('mail.smtp.auth','true');
  • setpref('Internet','SMTP_Username','myaddress@example.com');
setpref('Internet','SMTP_Password','mypassword');

  • 要覆盖默认的字符编码,请按如下方式设置电子邮件字符编码的预设:
setpref('Internet','E_mail_Charset',encoding);

其中 encoding 是一个指定字符编码的字符向量,例如 'SJIS'。

2、实际操作及环境设置

一般情况下直接用sendmail是不行的,因为sendmail 函数不支持需要身份验证的电子邮件服务器。所以还需要设置一下环境

1.首先关闭QQ安全中心的邮箱保护

2.需要先开启邮箱的smtp服务,下面以qq邮箱为例,打开QQ邮箱点击设置下的账户

3.开启 把红色框的那个,点击开启后,最后你会获得一个授权码,记住这个授权码,然后第一步就完成了

 4环境配置好了接下来运行代码

clc
clear
%author:猪猪侠
%date;2019-06-06
props = java.lang.System.getProperties;
props.setProperty('mail.smtp.auth','true');
setpref('Internet','SMTP_Username',Your_Mail);
% Your_Mail是你自己的邮箱
setpref('Internet','SMTP_Password',Your_Password);
% 如果是163邮箱,那最后的那个字符串就是smpt.163.com
% 反正就是邮箱中@后面和.com前面的那几个字符放在smpy.和.com中间
% Your_Password是你的授权码
sendmail('收件人的邮箱', 'matlab邮箱测试', 'matlab邮箱测试','test.docx')

标签:recipients,sendmail,setpref,SMTP,发送,Matlab,message,邮件,subject
来源: https://blog.51cto.com/u_12355165/2782154

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有