Java邮件发送中如何实现邮件内容的自动换行?
- 后端开发
- 2025-09-22
- 5
在Java中,要发送邮件并在邮件内容中实现换行,通常可以使用JavaMail API,以下是一个简单的示例,展示如何使用JavaMail发送带有换行的邮件。
使用JavaMail API发送带有换行的邮件
确保你已经在项目中包含了JavaMail API的依赖,如果你使用的是Maven,可以在pom.xml文件中添加以下依赖:
<dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version> </dependency>
下面是一个示例代码,展示如何发送带有换行的邮件:
import javax.mail.*; import javax.mail.internet.*; import java.util.Properties; public class EmailSender { public static void main(String[] args) { // 设置邮件服务器和端口 String smtpServer = "smtp.example.com"; int smtpPort = 587; // 设置发件人和收件人 String from = "sender@example.com"; String to = "receiver@example.com"; // 设置邮件主题和内容 String subject = "测试邮件"; String body = "这是一封测试邮件,nn" + "以下是表格内容:n" + "n" + "| 姓名 | 年龄 |n" + "n" + "| 张三 | 25 |n" + "| 李四 | 30 |n" + "n" + "n" + "感谢您的阅读!"; // 设置邮件属性 Properties props = new Properties(); props.put("mail.smtp.auth", "true"); props.put("mail.smtp.starttls.enable", "true"); props.put("mail.smtp.host", smtpServer); props.put("mail.smtp.port", smtpPort); // 设置认证信息 Session session = Session.getInstance(props, new javax.mail.Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(from, "password"); } }); try { // 创建邮件对象 Message message = new MimeMessage(session); message.setFrom(new InternetAddress(from)); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to)); message.setSubject(subject); message.setText(body); // 发送邮件 Transport.send(message); System.out.println("邮件发送成功!"); } catch (MessagingException e) { e.printStackTrace(); } } }
在上面的代码中,我们使用n字符来实现换行,你可以根据需要修改邮件内容和格式。

FAQs
Q1:如何设置邮件的HTML格式?


A1:要设置邮件的HTML格式,可以使用MimeMultipart和MimeBodyPart类,以下是一个示例:
MimeMultipart multipart = new MimeMultipart("related"); MimeBodyPart htmlPart = new MimeBodyPart(); htmlPart.setContent("<html><body><h1>测试邮件</h1><p>这是一封测试邮件。</p></body></html>", "text/html"); multipart.addBodyPart(htmlPart); message.setContent(multipart);
Q2:如何添加附件到邮件中?
A2:要添加附件到邮件中,可以使用MimeBodyPart类,以下是一个示例:
MimeBodyPart attachment = new MimeBodyPart(); DataSource source = new FileDataSource("path/to/attachment"); attachment.setDataHandler(new DataHandler(source)); attachment.setFileName("attachment.txt"); multipart.addBodyPart(attachment); message.setContent(multipart);
希望这个示例能帮助你发送带有换行的邮件,如果你还有其他问题,请随时提问。