我正在使用JavaMail API分析电子邮件标题。 在电子邮件文件大小以KB为单位的正常情况下,它不会在JVM中占用太多内存。但是,如果带有附件的大型电子邮件文件(35MB +),则会在JVM中占用大量空间。修改电子邮件标题而不加载内存中的电子邮件内容
是否有任何可能的方式来修改电子邮件标题,而无需在momory中加载电子邮件内容?
我做这样的事情:
Properties props = System.getProperties();
Session mailSession = Session.getDefaultInstance(props, null);
InputStream source = new FileInputStream(emlFile);
MimeMessage message = new MimeMessage(mailSession, source);
message.addHeader("X-Header","HeaderValue1");
message.addHeader("Y-Header", "HeaderValue2");
message.saveChanges();
Enumeration headerschange = message.getAllHeaders();
StringBuilder headerString = new StringBuilder();
while (headerschange.hasMoreElements()) {
Header h = (Header) headerschange.nextElement();
headerString = headerString.append(h.getName() + ": " + h.getValue() + "\n");
}
System.out.println("headerString::::::::::::::::::::"+headerString.toString());
请告诉我们你做了什么w.r.t.码。 –
@KrishnaKuntala,请找到编辑的问题。 – Jay