2017-07-07 50 views
0

我試圖以HTML表格的形式從我的Java郵件應用程序發送數據。問題是,當我收到郵件時,數據是簡單的文本格式,而不是表格形式。請建議一個解決方案從HTML郵件發送數據到HTML表中

StringBuilder sb1 = new StringBuilder(200); 
sb1.append("<html><body>"+ "<table style='border:2px solid black'>"); 
for(SCSINPojo cat : ar){ 

    sb1.append("<tr>"); 
    sb1.append(cat.getINNumber()) 
     .append("<td>") 
     .append(cat.getDescription()) 
     .append("</td><td>") 
     .append(cat.getStatus()) 
     .append("</td><td>") 
     .append(cat.getStatus()) 
     .append("</td><td>") 
     .append(cat.getOwner()) 
     .append("</td><td>") 
     .append(cat.getOwnerGroup()) 
     .append("</td><td>") 
     .append(cat.getSeverity()); 
    sb1.append("</tr>"); 
    String in = sb1.toString(); 

} 
sb1.append("</table></body></html>"); 

message.setText(sb1.toString()); 

Transport.send(message); 
+0

檢查此。 https://stackoverflow.com/questions/5068827/how-do-i-send-an-html-email – subro

+0

字符串是非常無用的,因爲它是從來沒有使用和重寫在每個迭代 – azro

回答

0

試試這個...你甚至可以打印出來的HTML文件,所以我已經添加了一些外觀線。

sb1.append("<html><body><br/>"+ "<table style='border:2px solid black'><br/>"); 
    for(SCSINPojo cat : ar){ 

     sb1.append("<tr><br/><td>"); 
     sb1.append(cat.getINNumber()) 
      .append("</td><br/><td>") 
      .append(cat.getDescription()) 
      .append("</td><br/><td>") 
      .append(cat.getStatus()) 
      .append("</td><br/><td>") 
      .append(cat.getStatus()) 
      .append("</td><br/><td>") 
      .append(cat.getOwner()) 
      .append("</td><br/><td>") 
      .append(cat.getOwnerGroup()) 
      .append("</td><br/><td>") 
      .append(cat.getSeverity()); 
     sb1.append("</td><br/><td>"); 
     String in = sb1.toString(); 

    } 
    sb1.append("</table></br></body></html>"); 
0

試試這個 -

MimeMessage simpleMessage = new MimeMessage(mailSession); 

然後,當你想設置郵件正文,或者調用

simpleMessage.setText(text, "utf-8", "html"); 

或致電

simpleMessage.setContent(text, "text/html; charset=utf-8"); 

希望這將有助於你:)

+0

謝謝..這工作 –