在mailto:anchor元素中编码希伯来语

时间:2011-12-29 16:09:10

标签: encoding href mailto hebrew

我在body参数中有一个带有希伯来语文本的mailto链接。

结果我得到了胡言乱语。

示例结果:

׳©׳ ׳”׳׳™׳¨׳•׳¢: 
׳׳×׳—׳™׳: 11.05.2011
׳׳¡׳×׳™׳™׳: 09.04.2014
׳”׳¢׳¨׳•׳×

我可以通过添加requestEncoding="windows-1255"来解决此问题 在web config。 但这会在网站的其他部分引起不必要的副作用。

如何在邮件正文中获得正确的希伯来文字?

2 个答案:

答案 0 :(得分:0)

在你的href中试试这个:

mailto:?body=שם האירוע: fixing the encoding issue 27.12.11%0Aמתחיל: 11.05.2011%0Aמסתיים: 09.04.2014%0Aהערות: encoding was messed up here as well%0A&subject=fixing the encoding issue 27.12.11

我玩这个链接: http://www.unicodetools.com/unicode/convert-to-html.php

答案 1 :(得分:0)

您应该在发送电子邮件之前对希伯来语文本正文进行编码。

即:

    final MimeMessage msg = new MimeMessage(session);
    msg.setText(message, "utf-8");
    msg.setHeader("Content-Type", "text/plain; charset=UTF-8");

    MimeBodyPart mbp1 = new MimeBodyPart();
    mbp1.setDataHandler(new DataHandler(new ByteArrayDataSourcemessage.toString), "text/html")));
    mbp1.setContent(new String(message.getBytes("UTF8"),"ISO-8859-8-i"), "text/html");

    Multipart mp = new MimeMultipart();
    mp.addBodyPart(mbp1);
    msg.setContent(mp, "text/html");

对我来说很好:)

祝你好运!

戴夫。