3 回答
TA貢獻1784條經驗 獲得超8個贊
嘗試:
helper.addAttachment("MyImageName.jpg", new ByteArrayResource(value.getBytes()));
但請閱讀:從代碼來看,您似乎已經對圖像進行了編碼?!爸怠彼坪跏?Base64 格式。你不應該處理它,因為它是為你完成的。
// you can attach a file directly to the helper
FileSystemResource file = new FileSystemResource(new File("image_file.jpg"));
helper.addAttachment("MyImageName.jpg", file);
如果附件不是磁盤上的文件,您可以使用:
helper.addAttachment("MyImageName.jpg", new ByteArrayResource(IOUtils.toByteArray(attachment)));
如果這是一個輸入流或這個:
helper.addAttachment("MyImageName.jpg", new ByteArrayResource(value.getBytes()));
TA貢獻1875條經驗 獲得超3個贊
通過波紋管代碼修改代碼后,我的問題解決了。
value= value.replaceFirst("^data:image/[^;]*;base64,?", "");
byte[] bytes = javax.xml.bind.DatatypeConverter.parseBase64Binary(value);
helper.addAttachment("MyImageName.jpg", new ByteArrayResource(bytes));
添加回答
舉報
