如何使用 java 邮件 api 打印电子邮件标题和页脚?
How to print a Email title and footer using java mail api?
每当我使用 java 邮件 api 发送邮件时,我必须将几行设置为自动打印为标题和页脚。
1.Kindly 帮助在不修改我的对齐方式的情况下打印这些内容。
2.How 为我的电子邮件设置背景颜色以及如何为我的电子邮件设置字体颜色。
我附上了我的 java 邮件代码和屏幕截图。
任何人都可以帮助我实现这一目标吗?
提前致谢。
我的 java 邮件程序代码:
package comparexmlf1;
import comparexmlf1.validatexml;
import comparexmlf1.CarParser1;
import comparexmlf1.OrderParser2;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.ObjectInputStream.GetField;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Enumeration;
import java.util.Properties;
import java.util.logging.Logger;
import javax.lang.model.element.Element;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import javax.swing.text.html.MinimalHTMLWriter;
import javax.xml.soap.MimeHeader;
import org.apache.log4j.Appender;
import org.apache.log4j.FileAppender;
public class mailer {
static void sendmail() throws IOException,
MessagingException,AddressException
{
String to1=CarParser1.to1;
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy
HH:mm:ss");
Calendar cal = Calendar.getInstance();
String to2 = CarParser1.to2;
String to3= CarParser1.to3;
String to4=CarParser1.to4;
String from = CarParser1.from;
String host = CarParser1.host;
Properties properties = System.getProperties();
properties.setProperty("mail.smtp.host", host);
Session session = Session.getDefaultInstance(properties);
MimeMessage message = new MimeMessage(session);
int m_toterr,m_totwarn;
String getfilepath="";
String filenamechange="D:/newlog
/"+CarParser1.si_orderid+"_log.txt";
System.out.println("New File Path for mail:"+filenamechange);
String pathLogFile = filenamechange;
Enumeration enumeration =
CarParser1.logger.getRootLogger().getAllAppenders();
try {
m_toterr=validatexml.Total_err;
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO, new
InternetAddress(to1));
message.setSubject(" CAR Validation Report at :
"+dateFormat.format(cal.getTime()));
StringBuffer sb = new StringBuffer();
FileInputStream fstream = new
FileInputStream(pathLogFile);
BufferedReader br = new BufferedReader(new
InputStreamReader(fstream));
String singleLine;
while ((singleLine = br.readLine()) != null)
{
sb.append(singleLine + "<br><br>");
}
br.close();
String allLines = sb.toString();
message.setContent(allLines, "text/html; charset=ISO-
8859-1");
Transport.send(message);
System.out.println("Email Sent successfully....");
CarParser1.logger.info("Email Sent Successfully...");
System.out.println();
}
catch (MessagingException mex)
{
System.out.println("Invalid Email Address.please provide
a valid email id to send with");
mex.printStackTrace();
}
}
}
谁能帮我实现这个目标?
提前致谢。
您发送的邮件由收件人的邮件 reader 软件呈现。如果收件人的邮件 reader 支持 HTML 那么您可以发送 HTML 电子邮件并在生成 HTML 时控制内容,包括在开始时发送特定的 text/markup和消息的结尾,并设置背景颜色等属性。
这一切是否有效完全取决于收件人的邮件reader软件是否支持HTML。通常建议为非 HTML reader 提供纯文本版本。
在格式、页眉、页脚或背景颜色方面,Java 电子邮件没有任何特定内容。这与 HTML.
有关
每当我使用 java 邮件 api 发送邮件时,我必须将几行设置为自动打印为标题和页脚。 1.Kindly 帮助在不修改我的对齐方式的情况下打印这些内容。 2.How 为我的电子邮件设置背景颜色以及如何为我的电子邮件设置字体颜色。 我附上了我的 java 邮件代码和屏幕截图。 任何人都可以帮助我实现这一目标吗? 提前致谢。
我的 java 邮件程序代码:
package comparexmlf1;
import comparexmlf1.validatexml;
import comparexmlf1.CarParser1;
import comparexmlf1.OrderParser2;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.ObjectInputStream.GetField;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Enumeration;
import java.util.Properties;
import java.util.logging.Logger;
import javax.lang.model.element.Element;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import javax.swing.text.html.MinimalHTMLWriter;
import javax.xml.soap.MimeHeader;
import org.apache.log4j.Appender;
import org.apache.log4j.FileAppender;
public class mailer {
static void sendmail() throws IOException,
MessagingException,AddressException
{
String to1=CarParser1.to1;
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy
HH:mm:ss");
Calendar cal = Calendar.getInstance();
String to2 = CarParser1.to2;
String to3= CarParser1.to3;
String to4=CarParser1.to4;
String from = CarParser1.from;
String host = CarParser1.host;
Properties properties = System.getProperties();
properties.setProperty("mail.smtp.host", host);
Session session = Session.getDefaultInstance(properties);
MimeMessage message = new MimeMessage(session);
int m_toterr,m_totwarn;
String getfilepath="";
String filenamechange="D:/newlog
/"+CarParser1.si_orderid+"_log.txt";
System.out.println("New File Path for mail:"+filenamechange);
String pathLogFile = filenamechange;
Enumeration enumeration =
CarParser1.logger.getRootLogger().getAllAppenders();
try {
m_toterr=validatexml.Total_err;
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO, new
InternetAddress(to1));
message.setSubject(" CAR Validation Report at :
"+dateFormat.format(cal.getTime()));
StringBuffer sb = new StringBuffer();
FileInputStream fstream = new
FileInputStream(pathLogFile);
BufferedReader br = new BufferedReader(new
InputStreamReader(fstream));
String singleLine;
while ((singleLine = br.readLine()) != null)
{
sb.append(singleLine + "<br><br>");
}
br.close();
String allLines = sb.toString();
message.setContent(allLines, "text/html; charset=ISO-
8859-1");
Transport.send(message);
System.out.println("Email Sent successfully....");
CarParser1.logger.info("Email Sent Successfully...");
System.out.println();
}
catch (MessagingException mex)
{
System.out.println("Invalid Email Address.please provide
a valid email id to send with");
mex.printStackTrace();
}
}
}
谁能帮我实现这个目标? 提前致谢。
您发送的邮件由收件人的邮件 reader 软件呈现。如果收件人的邮件 reader 支持 HTML 那么您可以发送 HTML 电子邮件并在生成 HTML 时控制内容,包括在开始时发送特定的 text/markup和消息的结尾,并设置背景颜色等属性。
这一切是否有效完全取决于收件人的邮件reader软件是否支持HTML。通常建议为非 HTML reader 提供纯文本版本。
在格式、页眉、页脚或背景颜色方面,Java 电子邮件没有任何特定内容。这与 HTML.
有关