当前位置: 首页 > 面试题库 >

如何对互联网地址进行编码

云俊名
2023-03-14
问题内容

发送电子邮件的代码如下:

    MimeMessage msg = new MimeMessage(session);
    msg.setSubject("subject", "UTF-8"); // here you specify your subject encoding
    msg.setContent("yourBody", "text/plain; charset=utf-8");

    msg.setFrom("senderAddress");
    msg.addRecipient(Message.RecipientType.TO, new InternetAddress(address));
    Transport.send(msg);

我的问题是,正如我在utf-8中编码主题一样,我如何编码收件人地址,即。 new InternetAddress(address)


问题答案:

JavaMail的MimeMessage使用InternetAddress:

此类表示使用RFC822语法的Internet电子邮件地址。典型的地址语法格式为“
user@host.domain”或“个人名称user@host.domain”。

RFC822格式说:

请注意,RFC
822将字符库限制为ASCII。实际上,其他字符(例如ä或é)通常在带引号的字符串中工作,这些字符串用于注释(和注释)目的,但不得在适当的地址中使用它们。

地址的个人名称支持不同的字符集

InternetAddress使用个人名称:

如果名称包含非US-ASCII字符,则将根​​据RFC 2047使用指定的字符集对名称进行编码。如果名称仅包含US-
ASCII字符,则不进行编码,并且按原样使用名称。

要设置用于编码的字符集,有一个InternetAddress#constructor。看资料:

public InternetAddress(String address, String personal, String charset)
        throws UnsupportedEncodingException {
    this.address = address;
    setPersonal(personal, charset);
}

它只调用setPersonal(..),因此选择最方便的方式。

要查找字符集,请使用Charset.forName()。



 类似资料:
  • 地址 # ipaddress_addresses.py import binascii import ipaddress ADDRESSES = [ '10.9.0.6', 'fdfd:87b5:b475:5e3e:b1bc:e121:a8eb:14aa', ] for ip in ADDRESSES: addr = ipaddress.ip_address(ip)

  • 问题内容: 寻找无错误的经过测试的SQL脚本,我可以在UDF中使用它来通过sql编码url。函数将接受一个URL并传递一个URL编码的URL。我已经看到了一些,但是我所遇到的一切似乎都存在一些缺陷。 问题答案: 为了使用此脚本,您将需要使用Numbers表。 该脚本在SQL Server Central 上完全可用(需要注册)

  • 我的代码有错误( 没有保存图像我会给你所有的代码: 主活动代码: 博客回收dapter.kt 还有博客ost.class 和DataStore.class 最主要的 还有activity_main.xml 和layout_blog_list_item.xml 和完全错误: 2020-01-15 21:34:36.509 32083-32083/? E/AndroidRuntime:致命异常:主进程

  • 问题内容: 因此,我正在尝试获取本地网络中本机的IP地址(应该是)。 我的初衷是使用这样的东西: 但它只会返回,这是正确的,但对我却没有太大帮助。 我四处搜索并找到了这个答案http://codingdict.com/questions/121424,它仅创建了到某些网页的- connection(例如“ google.com”),并从套接字获取了本地主机地址: 这确实适用于我的机器(返回),但需

  • 本章内容衍生自Jessica McKellar的演讲“互联网是怎幺工作的” (http://web.mit.edu/jesstess/www/) 。 我们猜你每天在使用互联网。但是当你在浏览器里输入一个像 https://djangogirls.org 的地址并按 回车键的时候,你真的知道背后发生了什幺吗? 你需要了解的第一件事是一个网站只是一堆保存在硬盘上的文件。 就像你的电影、 音乐或图片一样

  • 说明 地址URL /v1/common/Address/getAddress 支持格式 {url}?k1=v1&k2=v2&k3=v3&... HTTP请求方式 GET 是否需要登录 是 关于登录授权,参见 如何登录授权 访问授权限制 暂无 请求参数 名称 类型 必选 描述 client_id string yes 申请应用时分配的AppKey access_token string yes 授权