在W3 Schools
URL编码网页
上看到,它说@
应该被编码为%40
,并且space
应该被编码为%20
。
我已经尝试了URLEncoder
和URI
,但是上述方法都没有正确执行:
import java.net.URI;
import java.net.URLEncoder;
public class Test {
public static void main(String[] args) throws Exception {
// Prints me%40home.com (CORRECT)
System.out.println(URLEncoder.encode("me@home.com", "UTF-8"));
// Prints Email+Address (WRONG: Should be Email%20Address)
System.out.println(URLEncoder.encode("Email Address", "UTF-8"));
// http://www.home.com/test?Email%20Address=me@home.com
// (WRONG: it has not encoded the @ in the email address)
URI uri = new URI("http", "www.home.com", "/test", "Email Address=me@home.com", null);
System.out.println(uri.toString());
}
}
由于某些原因,URLEncoder
电子邮件地址正确但不能空格,并且URI
货币而不是电子邮件地址。
我应该如何编码这两个参数,以与w3schools所说的正确(或w3schools错误)相一致?
尽管我认为@fge的答案是正确的,但是由于我使用的是基于W3Schools文章中概述的编码的第三方Web服务,所以我遵循Java的答案,而Java的答案与产生相同输出的JavaScript的encodeURIComponent等效?
public static String encodeURIComponent(String s) {
String result;
try {
result = URLEncoder.encode(s, "UTF-8")
.replaceAll("\\+", "%20")
.replaceAll("\\%21", "!")
.replaceAll("\\%27", "'")
.replaceAll("\\%28", "(")
.replaceAll("\\%29", ")")
.replaceAll("\\%7E", "~");
} catch (UnsupportedEncodingException e) {
result = s;
}
return result;
}
问题内容: 我正在工作的项目是使用Jackson JSON 序列化程序将一堆Java对象转换为String,以便将它们发送到REST服务。 其中一些对象包含敏感数据,因此我编写了自定义序列化程序以将这些对象序列化为JSON字符串,然后对其进行gzip,然后使用; 对其进行加密。 这会将字符串转换为字节数组,因此我在编解码器中使用Base64编码器将字节数组转换为字符串。REST接口背后的自定义反序
源编码与目标编码的不一致. 而中文window系统默认编码GBK,害惨了多少程序员. 要尽量减少出现乱码,我个人认为要做到5码合一, IDE(Eclipse/idea),页面(jsp/其他模板引擎),应用服务器(tomcat等), 源码(Java源码及周边文件),数据库编码. 将Eclipse设置为UTF-8 打开Eclipse安装目录下的eclipse.ini,在最末尾新增一行 -Dfile.
问题内容: 我想编码一个可能是图像或任何pdf的文件并将其发送到服务器。我必须遵循哪种类型的编码和解码。(服务器和客户端都在我们公司内。我们可以在两个地方都写逻辑)。Java默认情况下支持 UTF-8编码 。并使用 Base-64 编码,我必须导入外部jar。对于简单的文本,两种方法都可以正常工作。我正在使用tcp套接字编程。 使用UTF-8编码 使用Base-64(使用Apache的common
我正在尝试使用Xugler(我相信它在引擎盖下使用)来执行以下操作: 接收原始MPJPEG视频比特流(来自小型TTL串行摄像头),并将其编码/转码为h.264;和 接收原始音频比特RAM(来自麦克风)并将其编码到AAC;然后 将两个(音频和视频)位存储在一起,并将其多路复用到一个MPEG-TS容器中 我已经看过了他们的一些优秀教程,到目前为止,我得到的是: 首先,我认为我离这里很近,但它仍然不正确
初识Unicode 编码 # codecs_to_hex.py import binascii def to_hex(t, nbytes): """Format text t as a sequence of nbyte long values separated by spaces. """ chars_per_item = nbytes * 2 he
本文向大家介绍php base64 编码与解码实例代码,包括了php base64 编码与解码实例代码的使用技巧和注意事项,需要的朋友参考一下 php base64 编码与解码详解 1.自定义规则方式编码和解码 实例 2.利用系统函数完成base64位的编码和解码 实例代码: 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!