Is there a way to set the content type to HTML instead of text/plain? I've created my HTML message into a Var and I'm trying to send it via sendmail, but the message is not received as expected. The mail app is just showing the HTML code truncated as if it where a plain text mail. How can I fix the content-type header? Example:

2 件のコメント

Cristian Urrutia
Cristian Urrutia 2016 年 9 月 27 日
編集済み: Cristian Urrutia 2016 年 9 月 27 日
public MessagePart(java.lang.String name,
java.lang.String filename,
java.lang.String content_type,
java.lang.String encoding)
Cristian Urrutia
Cristian Urrutia 2016 年 9 月 27 日
This is the code occupied to send the mail:
title_mail='Mail title';
msg_mail=sprintf('<html>...</html>');
%atch_mail='';
mail = 'account@outlook.com'; %Outlook email address
password = 'password'; %Outlook password
setpref('Internet','E_mail',mail);
setpref('Internet','SMTP_Server','smtp-mail.outlook.com');
setpref('Internet','SMTP_Username',mail);
setpref('Internet','SMTP_Password',password);
props = java.lang.System.getProperties;
props.setProperty('mail.smtp.auth','true');
props.setProperty('mail.smtp.socketFactory.class', 'javax.net.ssl.SSLSocketFactory');
props.setProperty('mail.smtp.socketFactory.port','587');
props.remove('mail.smtp.socketFactory.class');%outlook 587 starttls
props.setProperty('mail.smtp.starttls.enable', 'true' );%outlook 587 starttls
props.setProperty('java.lang.String.content_type','text/html')
sendmail('destination@gmail.com',title_mail,msg_mail);%,atch_mail);

サインインしてコメントする。

 採用された回答

Cristian Urrutia
Cristian Urrutia 2016 年 9 月 28 日

1 投票

I solved this patching the sendmail.m source like this:
msg.setContent(body, 'text/html; charset=utf-8');
Instead:
msg.setText(body, charset);

その他の回答 (0 件)

製品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by