【发布时间】:2019-02-11 23:52:20
【问题描述】:
假设我有一个网址:
https://example/dateParam/
我有一个用户输入的日期值(ZULU 格式),例如:
2016-07-20 13:10:04 +0300.
我希望结果是正确编码的 URL:
https://example/dateParam/2016-07-20%2013%3A10%3A04%20%2B0300
当我尝试这样做时:
String dateParam = "2016-07-20 13:10:04 +0300";
String encodedParam = URLEncoder.encode(dateParam, "UTF-8");
System.out.println(encodedParam);
我得到以下结果:
2016-07-20+13%3A10%3A04+%2B0300
对于空格,我需要 %20 而不是 +。 实现这一目标的最佳方法是什么?我尝试了 URLEncoder 并创建了 URI/URL 对象,但没有一个是完全正确的。
【问题讨论】:
-
你的结果怎么不太对?因为“+”没有被编码?
-
顺便说一句,我不认为有祖鲁格式这样的东西,至少我没有听说过。有一个“祖鲁时区”,偏移量为 +00:00(与您的 +03:00 不同)。
标签: java encoding timestamp format