Java 和 RFC 3986 URI 编码
是否有一个类可以按照 RFC 3986 规范对通用 String
进行编码?
即: "hello world"
=> “hello%20world”
不是(RFC 1738):“hello+world”
谢谢
is there a class to encode a generic String
following the RFC 3986 specification?
That is: "hello world"
=> "hello%20world"
Not (RFC 1738): "hello+world"
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
解决了这个:
http ://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/web/util/UriUtils.html
方法
encodeUri
Solved with this:
http://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/web/util/UriUtils.html
Method
encodeUri
如果是 url,则使用 URI
If it's a url, use URI
来源:推特
符合 RFC3986 的编码功能。
此方法获取字符串并将其转换为 RFC3986 特定的编码字符串。
Source : Twitter
RFC3986 compliant encoding functions.
This method takes string and converts it to RFC3986 specific encoded string.
不知道有没有。有一个类提供编码,但它将“”更改为“+”。但是你可以使用String类中的replaceAll方法将“+”转换为你想要的。
str.repaceAll("+","%20")
In don't know if there is one. There is a class that provides encoding but it changes " " into "+". But you can use the replaceAll method in String class to convert the "+" into what you want.
str.repaceAll("+","%20")
对于 Spring Web 应用程序,我可以使用以下内容:
http://static.springsource.org/spring/docs/3.1.x/javadoc-api/org/springframework/web/util/UriComponentsBuilder.html
返回字符串
对我最喜欢的网站之一进行交叉检查显示了相同的结果,“URI 的编码百分比”。我觉得不错。 http://rishida.net/tools/conversion/
In the case of Spring Web applications, I was able to use this:
http://static.springsource.org/spring/docs/3.1.x/javadoc-api/org/springframework/web/util/UriComponentsBuilder.html
returns the String
A cross check on one of my favorite sites shows the same result, "Percent encoding for URIs". Looks good to me. http://rishida.net/tools/conversion/