Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как определить размер посылаемого emal-а
|
|||
|---|---|---|---|
|
#18+
Я использую JavaMail для посылки email-ов. Все работает замечательно, но недавно появилась потребность писать сведения о каждой посылке в log (посылатель, получатель, размер сообщения, кол-во mime parts и т.д.). Я не могу узнать размер посылаемого email-а. Мой код выглядит примерно так: MimeMessage message = new MimeMessage(jmail_session); message.setFrom(from); message.setSubject(subject); message.addRecipient(Message.RecipientType.TO, to); //текст сообщения MimeMultipart multipart = new MimeMultipart(); MimeBodyPart body = new MimeBodyPart(); body.setText(getBody(), "iso-8859-1"); multipart.addBodyPart(body); //аттачменты . Эта часть может делаться в цикле несколько раз BodyPart attachment = new MimeBodyPart(); DataSource ds = new ByteArrayDataSource(data, null, filename); attachment.setDataHandler(new DataHandler(ds)); attachment.setDisposition("attachment; filename=\"" + filename + "\""); attachment.setFileName(filename); multipart.addBodyPart(attachment); message.setContent(multipart); Transport.send(message); У класса MimeMessage ecть метод getSize(), но он всегда возвращает -1. Я могу получить InputStream и посчитать ко-во байт в нем: InputStream is = message.getInputStream(); int size = 0; while (is.read() != -1) { size++; } Проблема в том, что это значение ВСЕГДА меньше реального, т.к. сообщение переводится в кодировку base64 перед отправкой. У кого-нибудь есть соображения по этому поводу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2003, 13:55 |
|
||
|
Как определить размер посылаемого emal-а
|
|||
|---|---|---|---|
|
#18+
Я бы message пихал в ByteArrayOutputStream Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. В бою проверенно. Размер показывает правильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.08.2003, 12:47 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=860&tid=2154592]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
2ms |
| others: | 273ms |
| total: | 398ms |

| 0 / 0 |
