如何在Groovy中编码URL?
Groovy中有一种URLEncode吗 我找不到任何字符串→ 字符串URL编码实用程序 示例:如何在Groovy中编码URL?,groovy,urlencode,url-encoding,Groovy,Urlencode,Url Encoding,Groovy中有一种URLEncode吗 我找不到任何字符串→ 字符串URL编码实用程序 示例:脱氢酶(NADP+)→ 脱氢酶%20(NADP%2b) (+而不是%20也是可以接受的,因为实现是这样做的)您可以使用java.net.URLEncoder 在上面的示例中,括号也必须进行编码: def toEncode = "dehydrogenase (NADP+)" assert java.net.URLEncoder.encode(toEncode, "UTF-8") == "dehydrog
脱氢酶(NADP+)
→ <代码>脱氢酶%20(NADP%2b)
(
+
而不是%20
也是可以接受的,因为实现是这样做的)您可以使用java.net.URLEncoder
在上面的示例中,括号也必须进行编码:
def toEncode = "dehydrogenase (NADP+)"
assert java.net.URLEncoder.encode(toEncode, "UTF-8") == "dehydrogenase+%28NADP%2B%29"
您还可以向string的元类添加一个方法:
String.metaClass.encodeURL = {
java.net.URLEncoder.encode(delegate, "UTF-8")
}
和对任何字符串的简单调用encodeURL()
:
def toEncode = "dehydrogenase (NADP+)"
assert toEncode.encodeURL() == "dehydrogenase+%28NADP%2B%29"
urlcoder.encode(toEncode)
不推荐使用。RFC 3986不建议使用默认编码。最好使用URLEncoder.encode(toEncode,“UTF-8”)
这个函数还不是GDK URL类的一部分,这让人很遗憾。由于某种原因,那个元类版本对我来说不起作用。因为我在Gradle构建脚本中试过了?